[API reference](https://evolu.dev/docs/api-reference) › [@evolu/common](https://evolu.dev/docs/api-reference/common) › [Http](https://evolu.dev/docs/api-reference/common/Http) › FetchError

```ts
type FetchError = FetchTransportError | FetchStatusError | FetchBodyError;
```

Defined in: [packages/common/src/Http.ts:90](https://github.com/evoluhq/evolu/blob/a18269a1b822c670b507c6a9b73b23eed32551fe/packages/common/src/Http.ts#L90)

Error returned by [fetch](https://evolu.dev/docs/api-reference/common/Http/functions/fetch) body modes.

The union distinguishes native request failures, non-2xx responses, and body
read failures. Narrow on `type` when handling a specific case. The
distinction matters for retries: [FetchBodyError](https://evolu.dev/docs/api-reference/common/Http/interfaces/FetchBodyError) means a 2xx response
failed during reading, so the server may have committed the request.