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

# SignerAuthenticationError

Defined in: [packages/wallets/src/signers/types.ts:54](https://github.com/Crossmint/crossmint-sdk/blob/main/packages/wallets/src/signers/types.ts#L54)

Thrown when the signer backend rejects the request's credentials (missing, empty or expired JWT).
Distinct from `OtpValidationError`: the OTP flow never ran, the user must re-authenticate with the app first.

## Extends

* `Error`

## Constructors

### new SignerAuthenticationError()

> **new SignerAuthenticationError**(`message`, `code`?): `SignerAuthenticationError`

Defined in: [packages/wallets/src/signers/types.ts:57](https://github.com/Crossmint/crossmint-sdk/blob/main/packages/wallets/src/signers/types.ts#L57)

#### Parameters

| Parameter | Type |
| - | - |
| `message` | `string` |
| `code`? | `string` |

#### Returns

`SignerAuthenticationError`

#### Overrides

`Error.constructor`

## Properties

| Property | Modifier | Type | Description | Inherited from | Defined in |
| - | - | - | - | - | - |
| <a id="code" /> `code` | `readonly` | `string` \| `undefined` | - | - | [packages/wallets/src/signers/types.ts:55](https://github.com/Crossmint/crossmint-sdk/blob/main/packages/wallets/src/signers/types.ts#L55) |
| <a id="message" /> `message` | `public` | `string` | - | `Error.message` | node\_modules/.pnpm/typescript\@5.5.3/node\_modules/typescript/lib/lib.es5.d.ts:1077 |
| <a id="name" /> `name` | `public` | `string` | - | `Error.name` | node\_modules/.pnpm/typescript\@5.5.3/node\_modules/typescript/lib/lib.es5.d.ts:1076 |
| <a id="stack" /> `stack?` | `public` | `string` | - | `Error.stack` | node\_modules/.pnpm/typescript\@5.5.3/node\_modules/typescript/lib/lib.es5.d.ts:1078 |
| <a id="preparestacktrace" /> `prepareStackTrace?` | `static` | (`err`: `Error`, `stackTraces`: `CallSite`\[]) => `any` | Optional override for formatting stack traces **See** [https://v8.dev/docs/stack-trace-api#customizing-stack-traces](https://v8.dev/docs/stack-trace-api#customizing-stack-traces) | `Error.prepareStackTrace` | node\_modules/.pnpm/@types+node\@20.14.8/node\_modules/@types/node/globals.d.ts:28 |
| <a id="stacktracelimit" /> `stackTraceLimit` | `static` | `number` | - | `Error.stackTraceLimit` | node\_modules/.pnpm/@types+node\@20.14.8/node\_modules/@types/node/globals.d.ts:30 |

## Methods

### captureStackTrace()

> `static` **captureStackTrace**(`targetObject`, `constructorOpt`?): `void`

Defined in: node\_modules/.pnpm/@types+node\@20.14.8/node\_modules/@types/node/globals.d.ts:21

Create .stack property on a target object

#### Parameters

| Parameter | Type |
| - | - |
| `targetObject` | `object` |
| `constructorOpt`? | `Function` |

#### Returns

`void`

#### Inherited from

`Error.captureStackTrace`
