CDN

How the CDN works

An account owns its files and delivery hosts. A namespace is an optional tenant label on a file, used for access restrictions, quotas, listings and credit budgets. It does not become a filesystem path or a separate wallet.

Upload lifecycle

  1. Your backend authenticates to Oblien and calls POST /cdn/token. The API validates the account tier, namespace policy and credit balance, then atomically reserves storage and monthly upload capacity together with destination and worker space. Concurrent requests share these reservation counters.
  2. Your browser or service uses the returned upload permit, without receiving the account API secret. Start within five minutes. The same upload can resume for up to 24 hours.
  3. The CDN receives bounded chunks, validates the actual media, and processes it in private staging. A client filename or MIME header alone does not authorize a file type.
  4. The API validates the actual stored output manifest and current policy. The node publishes the files and confirms completion. Only ready operations expose a successful upload receipt.
  5. The shared credit ledger charges storage over time and delivered origin bytes. Files, namespace spending, wallet deductions and retry identities are reconciled through that ledger.

An idempotency key identifies one unchanged upload request. Reuse it, the original permit and upload ID after a network failure. Reusing a key with different declared parameters returns 409 idempotency_conflict. Resume with the original file bytes.

The permit pins the selected storage destination and worker. Local disks and private S3-compatible buckets use the same lifecycle and credit ledger. Large downloads are served by the edge; see storage and delivery.

Delivery and access

Each account has a host such as https://<label>.cdn.oblien.com, with optional verified custom aliases. Use returned URLs rather than constructing paths. Legacy URLs remain supported when their stored object is inventoried.

CDN files are public at their URLs. Namespace isolation protects upload and management APIs; it does not turn a CDN link into a private download. Documents and archives download as attachments. Active HTML and executable uploads are not supported. Document/archive contents are not extracted or executed, and there is no malware-scanning guarantee.

Origin delivery validates the registered host, file owner, storage state, account balance and namespace credit budget. A short authorization cache and in-flight transfers mean a budget is not a byte-exact prepaid reservation. Previously cached public copies may remain accessible after deletion or a credit block. External cache hits are neither observed nor billed as Oblien delivery.

Recovery

Processing and publication keep the same upload identity across retries. Failed jobs release their reservation only after cleanup. Unstarted permits expire after five minutes; abandoned receiving jobs expire after 24 hours. Read GET /cdn/uploads/:uploadId from your backend and /api/uploads/:uploadId at the CDN with the upload permit to reconcile a pending operation.