Skip to content
For SaaS & web apps

User uploads, handled.

Avatars, attachments, and user-generated content, uploaded securely and delivered fast, with access control built in.

Secure uploads

Signed upload URLs and space-scoped API keys keep user content locked down.

Avatars on demand

Square-crop and face-center any profile photo with a single URL.

Public, private, or signed

Per-asset access: public CDN, private originals, or fully authenticated delivery.

Any asset type

Images, video, audio, PDFs, and documents from the same API.

Sub-50ms avatar delivery
cdn.tzzl.io/avatars/user_8f3.jpg?w=128&h=128&r=crop&g=face
Start for free
01

Uploads without the plumbing

Signed upload URLs let your users push files to Tuzzle without the bytes ever transiting your servers. Upload configs validate file type and size at the door, so junk never reaches your storage and your own API stays thin.

Direct upload from the browser
await fetch('https://api.tzzl.io/v1/upload', {
  method: 'POST',
  body: form,
})
02

Access control that matches your product

Mark each asset public, private, or authenticated. Private originals stay locked behind time-limited signed URLs while their derivatives stay fast on the CDN, and fully authenticated assets are never publicly cached at all. Your permission model, enforced at the delivery layer.

03

Every file type your users throw at you

Avatars, screenshots, attachments, exports, voice notes: images, video, audio, PDFs, and documents all live in the same space with the same API and access model. One integration covers the whole product, today and after the next feature.

Face-centered avatars in one URL
cdn.tzzl.io/avatars/user_8f3.jpg?w=128&h=128&r=crop&g=face

Start delivering faster media today.

Free to start, no credit card. Be up and running with your first transform URL in minutes.