Fankex

Enter a keyword to search published documentation.

mywebdrive

Quota and Storage

Understand your four quota values, how reservations work, what replacement costs, and when physical storage differs from accounting.

Read four separate values

GET /api/v1/quota returns decimal strings: limitBytes, reservedBytes, committedBytes, and availableBytes.

availableBytes = limitBytes - reservedBytes - committedBytes

limitBytes is the account limit. reservedBytes covers uploads in progress. committedBytes covers finalized, charged content. A new upload needs a reservation before transfer; summing the visible file list isn't a reliable available-space calculation.

A synthetic calculation

For a 1000-byte limit, 600 committed bytes, and 200 reserved bytes, 200 bytes remain available. Finalizing the 200-byte upload moves its reservation into committed accounting; completing the progress bar doesn't create additional space. Cancelling or expiring an unfinished reservation releases its space.

Strings prevent JavaScript integer precision loss. Custom clients should calculate with BigInt, then format B, MiB, or GiB for display. Don't compare byte strings lexicographically.

No universal free-capacity promise

The operator sets DEFAULT_USER_QUOTA_BYTES for new accounts and can change individual limits. Local setup writes 10737418240 bytes (10 GiB) into the development configuration. That's not a guaranteed hosted allowance or a commercial plan.

Reservations, replacement and physical storage

An upload intent usually reserves space for 15 minutes. Expired reservations are released during quota-related processing; don't expect browser-visible space to change at the exact expiry instant. Cancellation itself can fail, so reread /quota and inspect processing state.

committedBytes and physical object bytes measure different things. Historical versions and temporarily unreconciled objects can affect physical usage. Don't equate committedBytes with a storage bucket's actual size. Replacement still reserves the complete new version. Finalization adds its full size to committedBytes without subtracting the old version. Retaining old objects doesn't promise automatic space reclamation.

Administrator changes

PATCH /api/v1/admin/users/{userId}/quota accepts a nonnegative decimal string limitBytes. A limit below committed plus reserved usage returns 409. Confirm the account and current usage before changing it. A zero limit doesn't delete files.

The account page has no complete quota-management control. An API description doesn't give regular users permission to change limits. If quota blocks an upload, record the status and time and contact the operator—don't clear database or bucket records to bypass accounting. See User administration.