Media Library Overview — SanadiqCloud
Product version: 1.0.0+1
Last updated: 2026-10-02
Audience: Tenant Owners, Tenant Employees, Regular Users (needmedia:read; upload needsmedia:create)
A. What Is the Media Library?
Central place to store organization files and images, then reuse them (product images, brand assets, organization files, certificates, general uploads).
| Screen | Path |
|---|---|
| Library | /media (side rail Media) |
| Upload | /media/upload (from library when media:create) |
| Detail | /media/:id |
Upload is a separate route, not a Library tab.
Also related (not hub screens):
- Image picker (
/image-picker) — modal used from product / brand / organization forms to pick or upload and return a public URL. - Profile photo — uploaded from the Profile hub (not the Media library); uses the profile upload API and does not count against organization storage.
B. Common Uses
- Product / product-item images
- Brand logos / assets
- Organization / certificate / general files
Inventory “attachments” are not managed in this hub; Media is library + upload + detail (+ picker from forms).
C. Permissions
| Permission | Effect |
|---|---|
media:read |
Library, detail, image picker browse, storage usage |
media:create |
Upload CTA, upload page, picker upload |
media:delete |
Delete on detail (force when references > 0) |
media:update |
Declared in the permission catalog; no edit-metadata UI |
D. Storage Quota
When usage data loads, a storage usage summary (used / limit progress) appears on the library and upload pages.
- Plan limits come from billing / tenant storage ledger.
- Exceeding quota returns an error snack (HTTP 413 / quota codes).
- Merchant Dashboard subscription section can also show storage warnings and link to Billing.
E. Supported Types (library upload)
Product, Brand, Organization, Certificate, General. See Upload.
Server accepts additional types for other flows (e.g. user_profile from Profile).
F. Size Limits
| Layer | Limit |
|---|---|
| App upload pages / picker | 25 MB (client check before send) |
| Media service | 100 MB |
G. File Links and Private Files
- Links shown in the app are signed and expire after 24 hours. Open the file again in the app to get a fresh link.
- Product, Brand and Organization files open from a valid link.
- Certificate and General files (and documents attached to support cases) are private: the link also needs a signed-in member of the organization. Support staff see case attachments only through the support case.
H. Permanent Deletion
- When an organization is permanently deleted, all of its media files and records are erased.
- When a user account is permanently deleted, that user's profile photos are erased.