Files and usage
Use Dashboard → CDN to upload and inspect media. Files, Usage, Namespaces, Domains and API share the same account and optional namespace scope. A shared workspace invitation does not grant access to its owner's account CDN or billing.
File records
GET /cdn/files accepts page, limit, namespace, tag, media_kind, include_deleted, sort_by and sort_order. media_kind is image, video, document or archive. Omit namespace to list your account, or use scope=personal for files without a namespace. Namespace credentials remain pinned to their assigned namespace and cannot use personal scope.
GET /cdn/files/:id returns the published record, retained variants, actual total bytes, recorded delivery counters and any pending file operation. A successful upload returns a stable file_id. Pending uploads are inspected through GET /cdn/uploads/:uploadId until publication succeeds; they do not appear as completed files.
const { data: files } = await oblien.cdn.list({
namespace: 'customer-123', media_kind: 'video', page: 1, limit: 25,
});
const { data: file } = await oblien.cdn.get(fileId);size describes the source input. total_bytes is the retained footprint used for storage. A compressed-only video may have a much smaller footprint than its source. Variant MIME types and URLs describe the actual retained format.
Usage and time ranges
GET /cdn/usage?namespace=customer-123 reports:
- Physical retained bytes, including trash, and bytes reserved by pending uploads.
- Published output bytes in the current UTC calendar month and effective byte ceilings.
- Recorded lifetime bytes delivered by Oblien and request counts.
- Current-period CDN storage and delivery credit deductions and current rates.
These metrics answer different questions. Monthly uploaded bytes are an admission allowance, not a delivery bill. Lifetime file traffic is not monthly spending. Missing data or a failed request must not be interpreted as zero usage.
GET /cdn/usage/series provides published-upload history. Credit deductions are also available through the existing credit ledger with service=cdn; deposits and refunds are separate transaction types.
Namespace controls
GET /cdn/namespaces includes namespaces with files and namespaces that have explicit CDN quotas, even before their first upload. Configure account defaults or one namespace using the quota endpoints. The registered namespace's CDN resource limits and the CDN settings UI update the same effective policy.
Delivery and deletion
CDN delivery resolves an approved object through its owning active host. A filename alone, a guessed path or a different account hostname does not authorize access. Files are public when published; documents and archives are downloads with restrictive content headers, not pages executed on your application's origin.
Deletion and restore return queued receipts. Read the file again for completion; expiry and deletion explains when retained storage stops being charged.