BuildDelivery and accessAll docs

documentation / build

Delivery and access

Control who can read a file, and see the usage that reading creates.

Public and private files

Anyone with a public file's ufsUrl can read it. A private file needs a signed URL that expires. Create one on your server with ufapi.getSignedURL(key, { expiresIn: "1h" }), and hand it only to users who may read the file.

Making a file private stops new unsigned reads once the change reaches the CDN. Copies people already downloaded stay with them. Never put a server credential in a file URL.

An application set to Private only in App settings stores every new file privately, even when an upload asks for public, and refuses to make any file public. Files that were public before the change stay public until you change them.

Delivery accounting

Successful GET and Range responses count toward downloads, including response headers. Successful HEAD and 304 responses cost a request unit and no download bytes. Each Range request is its own delivery request.

Delivery logs can arrive late or be incomplete. Provider costs and per-application usage are related measurements, not identical totals. The billing ledger reconciles accepted usage within the close window described in Billing.

Paused delivery

Running out of quota or a billing suspension can pause normal delivery. Authenticated export and cleanup follow the application's retention policy. A pause does not delete anything by itself.

Up nextSecurityKeep your identity, your organization's access, and your application credentials separate.