# server_definitions

[[Source]](https://github.com/XRPLF/rippled/blob/master/src/xrpld/rpc/handlers/ServerInfo.cpp#L42)

The `server_definitions` command returns an SDK-compatible `definitions.json`, generated from the `rippled` instance currently running. You can use this to query a node in a network, quickly receiving the definitions necessary to serialize/deserialize its binary data.

## Request Format

An example of the request format:

WebSocket

```json
{
  "id": 2,
  "command": "server_definitions"
}
```

JSON-RPC

```json
{
  "method": "server_definitions"
}
```

The request includes the following parameters:

| Field | Type | Required? | Description |
|  --- | --- | --- | --- |
| `hash` | String | No | If included and the hash matches the server's hash, the full set of definitions will not be returned. |


## Response Format

An example of a successful response:

WebSocket

```json
{
  "id": 1,
  "result": {
    "FIELDS": [
      [
        "Generic",
        {
          "isSerialized": false,
          "isSigningField": false,
          "isVLEncoded": false,
          "nth": 0,
          "type": "Unknown"
        }
      ],
      [
        "Invalid",
        {
          "isSerialized": false,
          "isSigningField": false,
          "isVLEncoded": false,
          "nth": -1,
          "type": "Unknown"
        }
      ],
      [
        "ObjectEndMarker",
        {
          "isSerialized": true,
          "isSigningField": true,
          "isVLEncoded": false,
          "nth": 1,
          "type": "STObject"
        }
      ],
      [
        "ArrayEndMarker",
        {
          "isSerialized": true,
          "isSigningField": true,
          "isVLEncoded": false,
          "nth": 1,
          "type": "STArray"
        }
      ]
      ...
    ]
  }
}
```

To see a full `definitions.json` file and descriptions of the top-level fields, see: [Definitions File](/docs/references/protocol/binary-format#definitions-file).

## Possible Errors

Any of the [universal error types](/docs/references/http-websocket-apis/api-conventions/error-formatting#universal-errors).