---
title: "Référence d'API — nodefony/client — jsonrpc"
source: docs/api/core/client-jsonrpc.md
url: https://nodefony.github.io/nodefony-core/docs/api/core/client-jsonrpc/
---


[Documentation](../../../) › [Référence d'API](../../) › [`nodefony`](../) › client-jsonrpc

> Générée depuis les déclarations de types publiées de `nodefony` **10.0.0-beta.5** : exactement ce que reçoit une application qui l'installe. Cette page n'existe dans aucun dépôt — pour la corriger, on corrige le TSDoc du code.

## `nodefony/client`

`import { … } from "nodefony/client"` — 17 symboles.

### Fonctions (7)

#### `classifyJsonRpcFrame`

```ts
function classifyJsonRpcFrame(frame: unknown): JsonRpcFrameKind
```

Classe une frame entrante DÉJÀ PARSÉE — le prédicat que partagent toutes les portes JSON-RPC du framework.

#### `isJsonRpcErrorObject`

```ts
function isJsonRpcErrorObject(value: unknown): value is IJsonRpcErrorObject
```

La valeur est-elle un objet `error` bien formé (code ENTIER, message chaîne) ?

#### `isJsonRpcId`

```ts
function isJsonRpcId(value: unknown): value is JsonRpcId
```

La valeur est-elle un identifiant de requête valide (chaîne ou nombre) ?

#### `jsonRpcFailure`

```ts
function jsonRpcFailure(id: JsonRpcId | null, code: number, message: string, data?: unknown): IJsonRpcFailure
```

Fabrique une réponse d'erreur — `data` n'apparaît que s'il est donné.

#### `jsonRpcNotification`

```ts
function jsonRpcNotification(method: string, params?: unknown): IJsonRpcNotification
```

Fabrique une notification (aucune réponse attendue).

#### `jsonRpcRequest`

```ts
function jsonRpcRequest(id: JsonRpcId, method: string, params?: unknown): IJsonRpcRequest
```

Fabrique une requête.

#### `jsonRpcSuccess`

```ts
function jsonRpcSuccess(id: JsonRpcId, result: unknown): IJsonRpcSuccess
```

Fabrique une réponse de succès.

### Constantes (3)

#### `JSON_RPC_VERSION`

```ts
const JSON_RPC_VERSION = "2.0"
```

Valeur exacte du membre `jsonrpc` (JSON-RPC 2.0 §4 : « MUST be exactly "2.0" »).

#### `JsonRpcError`

```ts
const JsonRpcError: { readonly PARSE_ERROR: -32700; readonly INVALID_REQUEST: -32600; readonly METHOD_NOT_FOUND: -32601; readonly INVALID_PARAMS: -32602; readonly INTERNAL_ERROR: -32603; }
```

Les cinq codes d'erreur que JSON-RPC 2.0 §5.1 définit.

#### `JsonRpcServerError`

```ts
const JsonRpcServerError: { readonly DEFAULT: -32000; readonly MIN: -32099; readonly MAX: -32000; }
```

La plage `-32000…-32099` que JSON-RPC 2.0 §5.1 réserve aux erreurs serveur définies par l'implémentation.

### Interfaces (5)

#### `IJsonRpcErrorObject`

```ts
interface IJsonRpcErrorObject
```

Objet `error` d'une réponse (JSON-RPC 2.0 §5.1).

- `code: number` — Entier — standard (§5.1) ou applicatif.
- `message: string` — Description courte, une phrase.
- `data?: unknown` — Détail libre ; ABSENT du fil quand il n'est pas donné.

#### `IJsonRpcFailure`

```ts
interface IJsonRpcFailure
```

Réponse d'erreur.

- `jsonrpc: "2.0"`
- `id: JsonRpcId | null` — `null` quand l'erreur survient avant d'avoir pu lire un `id`.
- `error: IJsonRpcErrorObject`

#### `IJsonRpcNotification`

```ts
interface IJsonRpcNotification
```

Notification : aucune réponse n'est due (pas d'`id`).

- `jsonrpc: "2.0"`
- `method: string`
- `params?: unknown`

#### `IJsonRpcRequest`

```ts
interface IJsonRpcRequest
```

Requête : attend une réponse portant le même `id`.

- `jsonrpc: "2.0"`
- `id: JsonRpcId`
- `method: string`
- `params?: unknown`

#### `IJsonRpcSuccess`

```ts
interface IJsonRpcSuccess
```

Réponse de succès.

- `jsonrpc: "2.0"`
- `id: JsonRpcId`
- `result: unknown`

### Types (2)

#### `JsonRpcFrameKind`

```ts
type JsonRpcFrameKind = "request" | "notification" | "response" | "invalid"
```

Nature d'une frame entrante, telle que JSON-RPC 2.0 la définit.

#### `JsonRpcId`

```ts
type JsonRpcId = string | number
```

Identifiant d'une requête : chaîne ou nombre (JSON-RPC 2.0 §4).

---

[← Toutes les références d'API](../../)
