Optimize a file
Sugar wrapper. Runs an optimize-only job. Async (201) by default; sync: true waits for the result.
Authorizations
Your secret key as a bearer token, e.g. Authorization: Bearer sk_live_…. Secret keys are server-side only.
Body
Optimize one or more files. Each source carries its own params, namespaced by file type: params.pdf for PDFs (DynaPDF pipeline) and params.raster for bitmaps (Sharp + fal.ai pipeline). Exactly one namespace per source is consumed — the server picks based on the detected file type. Mixed batches (PDF + raster in the same request) are supported. The request is synchronous by default — the response is 200 with { job } on completion, or 202 with pending: true if the job does not finish within ~27 s. An optional webhook is called when the job reaches a terminal status.
List of files to optimize. Each item may include a params object describing which optimizations to apply. Even a single file must be wrapped in an array.
1 - 50 elementsWhen true, return 201 immediately with { job, pending: true } and let the webhook (if any) deliver the terminal result. When false (default), the request is synchronous — 200 on completion, or 202 with pending: true if the job does not finish within ~27 s.
Response
Sync completion (sync: true)