invoices/2024/q1 — a new subfolder of a Private folder is never silently Public. See Folders & Paths.
There are three access control modes:
1. Public Folders
Assets in a public folder are accessible globally by anyone with the link.- Best for: Public website assets, open-graph images, public marketing videos, or user avatars.
- Caching: Public assets are aggressively cached on the Dreep CDN using
Cache-Control: public, max-age=31536000(1 year). - URLs: Look like standard fetch endpoints without any extra parameters.
2. Private Folders
Assets in a private folder are strictly locked down.- Best for: Internal company documents, unprocessed raw video uploads, or compliance records.
- Access: These assets cannot be fetched via the public
assets.dreep.ioURL at all. - Retrieval: To view them, you must use your server-side Dreep Project API Key to either download them directly to your server or generate a temporary secure link.
3. Signed Folders
Assets in a signed folder are only accessible via temporary, HMAC-signed URLs.- Best for: Premium user content, paid courses, or temporary file sharing (like AWS CloudFront signed URLs).
- Access: When a user requests a file, your backend server generates a temporary signature using your project’s Signing Secret. You then append the expiration timestamp (
exp) and the signature (sig) to the URL. - URLs: Look like this:
Default Expiration (Timing)
When you create a signed folder, you must define adefaultExpirySeconds value (e.g., 3600 for 1 hour).
If a user generates an upload URL or requests a link to the file and does not explicitly provide their own expiration override, the folder’s default expiration will be automatically applied.
Learn how to generate Signed URLs.
Creating Folders via API
You can programmatically create folders and assign their access control type using the API:Create Folder
path instead of name to create a whole nested chain at once. The
access settings apply to the last segment; the folders above it inherit from
their parents as usual.
Create a nested folder
Only empty folders can be deleted — a folder still holding files or subfolders
returns
409, so removing a folder can never destroy media by accident. Your
project’s default folder cannot be deleted at all.