Keep it, or answer now?
Never create a table just to read rows back once; never use scratch for data you will want again.
Configuration
- Structured sources only. CSV, JSON and XML sources; unstructured (document) sources and vector destinations are not accepted.
- A sample is required at create time. Like the object store destination, scratch needs the typed header so data quality rules and transformations can run — send the header row plus a few representative rows, exactly as for a structured destination.
- Exclusive. A scratch pipeline lands nothing anywhere; it cannot be combined with another destination in the same pipeline.
What a run produces
Data quality rules behave as everywhere else: a run either yields the whole transformed set (statussuccess, or warning when rules flagged rows) or nothing (status error). There are no rejected rows to read.
When the run finishes, its entry in the status rollup (GET /api/v1/pipeline/status?…&withrollup=true, or the MCP get_pipeline_status tool) carries the result:
For small results the preview is the whole answer. Page past it only when
resultTruncated is true.
Reading the result
Run detail page
Ops → Ingestion → the run. When the rollup carries a result, the page shows a View result panel: the record grid, Prev / Next paging, and a footer reading “showing N of M, expires at …”. Paging reads the stored result; it never re-runs the source.REST
pipelinetoken (one job) or publishertoken (the job a tap run submitted). offset defaults to 0; limit is clamped to the inline cap, so always advance by the page’s returnedCount, not by the limit you asked for.
See the Pipeline Status API for the full reference.
CLI
MCP
Agents read the first rows straight off theget_pipeline_status rollup (resultPreview) and call get_pipeline_result only when resultTruncated is true. See MCP Server.
Retention and sensitive data
A scratch result holds whatever the source returned, after transformation, in the platform’s built-in object store alongside staged documents. It is deleted by an hourly sweep once its retention window passes; reads after that return410. Retention is the mitigation: keep it short, especially on shared hosts, and shorten it rather than lengthen it when sources carry personal or otherwise sensitive data. 0 expires results immediately.
The inline preview cap and the retention window are deployment settings — see SCRATCH_INLINE_ROWS and SCRATCH_RETENTION_HOURS in the Configuration Reference.
A scratch pipeline still records its run history and data quality outcomes like any other pipeline. The rows are transient, and no dataset is registered in the catalog or the lineage graph.
