Skip to main content
Available as an add-on on paid plans.
Agents can capture files encountered during task execution: documents, images, videos, PDFs, spreadsheets, reports. Enable storage on a task, and Deck captures the files the agent is instructed to collect and makes them available through the API. Turn on extraction, and Deck also parses supported files into structured JSON.

How storage fits in

Storage is configured on a task. When a task run executes with storage enabled, captured files become storage items tied to that run. Retrieving an individual item gives you a signed download URL and, if extraction is on, structured data pulled from the file.

Enabling storage

Storage can be enabled on a task from the Console or the API.
FieldsWhat it does
enabledCapture files produced during execution
extractionParse captured files into structured JSON
extraction_schemaJSON Schema that controls what fields are extracted (required when extraction is on)
extraction_promptOptional natural-language guidance for the extraction model
deduplicationSkip files that match a previous capture, based on field values you choose
deduplication_schemaJSON Schema that defines the fields used for duplicate detection (required when deduplication is on)

Extraction

Extraction works with PDFs, invoices, receipts, statements, and common document types. Use extraction_schema to define exactly what you want back. If extraction fails on a specific file, the raw file is still available for download.

Deduplication

For recurring tasks, deduplication tells Deck to skip files that match one captured by a previous run. You choose which fields make a file “the same”. For a utility bill, that might be the account number plus the billing period start date. Files matching every chosen field against a prior capture are dropped, so you only ever process new documents. See the storage guide for configuration and field-picking guidance.

Input vs. output files

Storage items carry a purpose: output for files the agent captures during a run, attachment for files you provide as task input, and extraction for files Deck processed via direct extraction. All three are returned together with a task run’s storage. File inputs are available on Enterprise plans. See providing files as input.

Retrieving files

GET /v2/task-runs/{run_id}/storage
Each item includes a pre-signed url for download and an extraction field with the structured data. URLs are time-limited; refetch the item if one expires. You can also retrieve a single storage item by ID with GET /v2/storage/{storage_id}.

Retention

Retention period varies by plan. All files are deleted after 90 days.

Deep dives

Storage & document extraction

Full integration walkthrough with extraction schemas and examples.