---
title: Failure
description: "A Failure as `isFailure` narrows an error to it: the payload's fields, on the error itself."
---

# `Failure`

Type, in `@jr2/orchestrator/src/fail.ts`. The signature of an export, or a type that it names, names this type. The [Authoring surface](../authoring-surface.md) page lists each export. This type is not an export of `@jr2/orchestrator`, so a workflow module does not import it by name.

```ts
type Failure = { readonly reason: string; readonly detail?: unknown };
```

A Failure as `isFailure` narrows an error to it: the payload's fields, on the error itself.

**Fields**

- `reason`: `string`
- `detail` (optional): `unknown`
