# Version
The Version object is utilized to inform the client of the versions of different components of the Rosetta implementation.
## Example Usage
```typescript
import { Version } from "icpmcp-rosetta-api";
let value: Version = {
rosettaVersion: "1.2.5",
nodeVersion: "1.0.2",
middlewareVersion: "0.2.7",
};
```
## Fields
| Field | Type | Required | Description | Example |
| -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `rosettaVersion` | *string* | :heavy_check_mark: | The rosetta_version is the version of the Rosetta interface the implementation adheres to. This can be useful for clients looking to reliably parse responses. | 1.2.5 |
| `nodeVersion` | *string* | :heavy_check_mark: | The node_version is the canonical version of the node runtime. This can help clients manage deployments. | 1.0.2 |
| `middlewareVersion` | *string* | :heavy_minus_sign: | When a middleware server is used to adhere to the Rosetta interface, it should return its version here. This can help clients manage deployments. | 0.2.7 |
| `metadata` | [models.VersionMetadata](../models/versionmetadata.md) | :heavy_minus_sign: | Any other information that may be useful about versioning of dependent services should be returned here. | |