Platform (Studio)
- Studio adds List Archive and Extract Archive File steps for ZIP workflow inputs. Enumerate archive contents, wire
\{\{ item.path }}through foreach, and pass extracted files straight into Parse, Vision, or Search Files without leaving the builder. - Studio now finishes multi-GB file uploads with resumable multipart transfers, retrying individual parts without restarting the whole file.
- Studio workflows now include Search Files: ask a question about a ZIP archive and get a cited answer plus the files the step inspected. Scope the search to a folder inside the archive and use the same model and reasoning controls as other AI steps.
Public API
- Upload ZIP archives as reusable workflow inputs through the Files API. Archives can be much larger than single documents, so teams can pass bundled evidence, exports, or multi-file drops into the same runs that already accept PDFs and Office files.
- File uploads can now negotiate a resumable multipart session for multi-GB objects, with on-demand part URLs, authoritative resume listing, and safe completion that never overwrites a finished file.
- Starting a run from a reusable file id now keeps a private run-owned reference to the original bytes instead of duplicating large uploads. Deleting the reusable file leaves past runs readable until those runs themselves are deleted.
CLI
- Dataset import and export now keep a single
/api/v1prefix when the CLI base URL already includes/api/v1, so those commands reach the dataset API instead of a doubled/v1/v1path. - The CLI now uploads large run files with resumable, storage-direct transfers, so multi-GB inputs stream from disk instead of loading into memory or a single request.
- The CLI now recognizes
.zipfiles when uploading reusable workflow inputs, so archive uploads get the correct content type without extra flags.
SDK
- The TypeScript and Python SDKs now upload large files through resumable multipart sessions, streaming from a path or seekable source so callers do not have to load the whole object into memory.
Infrastructure & processing
- Workflows can add
transform.archive-listandtransform.archive-extractto inspect ZIP inputs and pull out individual files. List every entry in an archive, then extract one path as a run output file that Parse, Vision, Search Files, and other archive-aware steps can use in the same run — including after resume and inside foreach or parallel_map. Nested archives stay as ZIP files. Each extraction is capped at 64 MiB, with safe concurrency limits on parallel extracts so large batches cannot unpack unbounded data at once. - Workflows can add
ai.search-filesto ask a natural-language question against a ZIP archive. The step returns a cited answer, the files it inspected, and optional folder scoping — with bounded investigation limits so runs stay predictable. - Restore extracted file handles inside parallel branches when workflows resume, and reject ZIP entries whose contents fail their CRC32 checksum.