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

# aborted

> Stream-terminal code — the run was stopped. Not a fault.

**Stream terminal · not an HTTP error.** This code arrives in the typed terminal
`error` event on the run's stream, when a run ended because it was stopped mid-flight
— a `POST …/stop`, an operator abort, a dropped signal — and the abort surfaced as
the run's ending. It is not a fault: nothing failed, someone (usually you) asked the
run to end. Only signed receipts settle and the rest of the reservation is released.

A clean stop more often ends as status `stopped` (a `search-done` with
`stop: "stopped"`); `aborted` is the ending when the interruption cut the run before
it could settle into that shape. Treat both the same way.

## The shape

```json theme={null}
{ "phase": "error", "message": "The operation was aborted", "code": "aborted" }
```

`message` is prose for humans and may change; program against `code`. Stream codes
are an [open enum](/errors#stream-terminal-codes) — handle an unknown code like
[`internal`](/errors/internal).

## How to fix

* If you sent the stop: nothing to fix — this is the confirmation. Read what was
  delivered before the stop from `GET …/rows` and the run's receipts.
* If you didn't: check for a concurrent stop from another client or a dashboard
  action, and check the run's timeline in the dashboard.

## Reproduce it

Start a streamed run and `POST …/stop` it while in flight (see
[Streaming](/guides/streaming)); an in-flight stop ends the run without starting
anything new.
