> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ionworks.com/llms.txt
> Use this file to discover all available pages before exploring further.

# SimplePipeline

> Submit single-element pipelines for fire-and-forget data fitting or validation

A `SimplePipeline` is a lightweight alternative to the full [Pipeline](/guide/pipelines/overview) when your workflow has **at most one expensive element** — a single `DataFit` or `Validation`. It gives you fire-and-forget execution with a flat result containing `parameter_values`, `cost`, and optional `summary_stats`.

## When to Use

| Use SimplePipeline                    | Use Pipeline                               |
| ------------------------------------- | ------------------------------------------ |
| At most one `DataFit` or `Validation` | Multiple `DataFit` / `Validation` elements |
| Fire-and-forget execution             | Per-element status tracking                |
| Flat `parameter_values` result        | Cumulative parameter threading             |

## How It Works

A `SimplePipeline` follows the same three conceptual steps as a full pipeline, just with a single expensive element and a flatter result:

1. **Build a typed config.** `SimplePipeline` inherits everything from `Pipeline`, so you compose the same element types (a `DirectEntry` for known values plus one `DataFit` or `Validation`). It adds client-side validation that rejects configs with more than one expensive element — the error is raised immediately when you build it, so you never wait on a server-side rejection to find out.
2. **Submit fire-and-forget.** The config is sent to Ionworks, which runs it in the background. Because there is at most one expensive element, there is no per-element status to track — you just wait for the whole job to finish.
3. **Read a flat result.** A fit returns `parameter_values` and `cost`; a validation additionally returns `summary_stats`. There is no cumulative parameter threading to unpack — everything is at the top level of the result.

## Running a SimplePipeline

The runnable SDK code — building the config with `ionworks_schema`, submitting and polling with `client.simple_pipeline`, and the validation-only variant — lives in the Documentation tab:

<Card title="SimplePipeline in the Python API" icon="code" href="/pipelines/api#simplepipeline">
  Build a config, submit with `client.simple_pipeline`, poll for completion, and read the flat result.
</Card>

For the full schema API, see the [ionworks-schema documentation](https://schema.docs.ionworks.com/).
