Features / Private delivery

Private by default: short-lived signed URLs, clear retention

CrossUpload never makes uploads public. Your server receives a durable file ID, and whenever it needs to show or process the file it asks the API for a fresh, expiring URL. File IDs, URL expiry and retention expiry are three different things — and the API tells you all three.

The problem

  • Public bucket links leak through browser history, logs and forwarded emails.
  • “Permanent” upload hosting quietly becomes a liability nobody budgeted for.

How CrossUpload helps

Durable IDs

Store the file ID with your business record. It stays valid for the file’s retention period.

Fresh URLs on demand

POST /v1/files/{id}/url returns a signed URL that expires in minutes. Request a new one whenever you need it.

Explicit retention

Every file reports expiresAt. Retention depends on your plan and project settings; export what you need to keep longer.

Real deletion

Permanent deletion stops new URL issuance and removes the stored object and all its versions. CDN invalidation can be queued when needed.

Already-issued signed URLs remain valid until they expire (and may be cached by the CDN) unless you request an invalidation. Keep URL lifetimes short.

Questions

Can I keep files forever?

No. Retention is part of the contract and the price. Copy files into your own storage if you must keep them longer — see the files and retention guide.

Ready to try it?

Free plan, no credit card. Talk to us at master@crossupload.com.

Create a free account