# @erebos/rpc-error

> JSON-RPC error

Latest version **0.10.0** (published 2019-10-01) · MIT license · 0 weekly downloads

## Install

```sh
npm install @erebos/rpc-error
pnpm add @erebos/rpc-error
yarn add @erebos/rpc-error
bun add @erebos/rpc-error
```

## Health

**Score 25/100 (F)** — status: abandoned.

Positive: has types; esm support; no vulnerabilities.

Warnings: low downloads; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.10.0 |
| Published | 2019-10-01 |
| First published | 2019-10-01 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | ESM + CommonJS |
| Dependencies | 2 |
| Unpacked size | 10 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 48 |
| Author | Mainframe |
| Maintainers | sarahwiley, mosic, howleysv, aclarke, diogoperillo, paul_lecam |

## Links

- npm: https://www.npmjs.com/package/@erebos/rpc-error
- Repository: https://github.com/MainframeHQ/erebos
- Homepage: https://github.com/MainframeHQ/erebos#readme
- Issues: https://github.com/MainframeHQ/erebos/issues
- npm.io page: https://npm.io/package/@erebos/rpc-error

## Dependencies (2)

- [@babel/runtime](https://npm.io/package/@babel/runtime.md) ^7.6.2
- [@erebos/rpc-base](https://npm.io/package/@erebos/rpc-base.md) ^0.10.0

## Recent versions

- 0.10.0 (latest) — 2019-10-01

## README

# rpc-error

Error class and utilities for JSON-RPC errors.

## Installation

```sh
yarn add @erebos/rpc-error
```

## Usage

```js
import RPCError, { parseError, methodNotFound } from '@erebos/rpc-error'

const error1 = parseError()
const error2 = methodNotFound('get_user')
const error3 = new RPCError(-32600) // Invalid request
const error4 = new RPCError(1000, 'Custom app error', { user: 'alice' })
```

## API

### new RPCError()

**Arguments**

1.  `code: number`
1.  `message?: string`: will be set based on the `code` when not provided
1.  `data?: T`: optional additional error data

### .toObject()

**Returns** [`RPCErrorObject`](../rpc-base#rpcerrorobject)

### RPCError.fromObject()

Creates a RPCError instance from a [`RPCErrorObject`](../rpc-base#rpcerrorobject).

**Arguments**

1.  `error: RPCErrorObject`

**Returns** `RPCError` instance

### isServerError()

**Arguments**

1.  `code: number`

**Returns** `boolean`

### getErrorMessage()

**Arguments**

1.  `code: number`

**Returns** `string`

### parseError()

**Arguments**

1.  `data?: ?any`

**Returns** `RPCError` instance with code `-32700`

### invalidRequest()

**Arguments**

1.  `data?: ?any`

**Returns** `RPCError` instance with code `-32600`

### methodNotFound()

**Arguments**

1.  `data?: ?any`

**Returns** `RPCError` instance with code `-32601`

### invalidParams()

**Arguments**

1.  `data?: ?any`

**Returns** `RPCError` instance with code `-32602`

### internalError()

**Arguments**

1.  `data?: ?any`

**Returns** `RPCError` instance with code `-32603`

## License

MIT

---
_Source: https://npm.io/package/@erebos/rpc-error · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
