Skip to content

PresignUploadUrlOptions

type PresignUploadUrlOptions = {
bytes: number;
clientOriginalBytes?: number;
fileName: string;
mime: string;
presets?: AssetDTO[];
sha256: string;
video?: UploadVideoOptions;
};

Defined in: packages/sdk/src/index.ts:421

Input shape accepted by aq.assets.presignUploadUrl(...).

bytes: number;

Defined in: packages/sdk/src/index.ts:427

Byte length of the upload payload.


optional clientOriginalBytes?: number;

Defined in: packages/sdk/src/index.ts:440

Pre-compression size of the source (useful when the browser ran compressorjs / heic2any before computing bytes). Surfaces in admin dashboards under assets.client_original_bytes.


fileName: string;

Defined in: packages/sdk/src/index.ts:429

Suggested file name; surfaces in admin dashboards + extension fallback.


mime: string;

Defined in: packages/sdk/src/index.ts:425

MIME type of the bytes (e.g. image/jpeg, video/mp4).


optional presets?: AssetDTO[];

Defined in: packages/sdk/src/index.ts:434

Variant ladder to generate after /assets/process. Defaults to ["original"] server-side when omitted — same contract as aq.upload.


sha256: string;

Defined in: packages/sdk/src/index.ts:423

Full sha256 (64 hex) of the bytes that will be PUT to R2.


optional video?: UploadVideoOptions;

Defined in: packages/sdk/src/index.ts:442

VIDEO-only delivery knobs forwarded into /assets/process. See UploadVideoOptions.