# OPC UA Node Properties

## `browseName` (string, required)

The browse name (not path) of this node

Examples: `"temperature1"`, `"pressure2"`

## `nodeId` (string)

The specific node id of this node

Example: `"ns=1;s=spindleSpeed"`

## `nodeType` (string, enum, required)

The node type: Whether this node is a variable or an object.

This element must be one of the following enum values:

* `Object`
* `Variable`
* `Method`

## `historize` (boolean)

Whether to accumulate an historian for this node

Default: `false`

## `interpolation` (string, enum)

The displayed interpolation mode

This element must be one of the following enum values:

* `stepped`
* `sloped`

Default: `"sloped"`

## `maxTimeInterval` (integer)

Specifies the maximum interval between data points in the history repository regardless of their value change \[in milliseconds]

Default: `10000`

Example: `1000`

## `minTimeInterval` (integer)

Specifies the minimum interval between data points in the history repository regardless of their value change \[in milliseconds]

Default: `500`

Example: `100`

## `inputArguments` (array)

Input arguments for method nodes

The object is an array with all elements of the type `object`.

The array object has the following properties:

#### `name` (string, required)

The name of the argument

#### `description` (string)

Description of the argument

#### `dataType` (string, enum, required)

The data type of the argument

This element must be one of the following enum values:

* `Boolean`
* `Byte`
* `ByteString`
* `DataValue`
* `DateTime`
* `DiagnosticInfo`
* `Double`
* `ExpandedNodeId`
* `ExtensionObject`
* `Float`
* `Guid`
* `Int16`
* `Int32`
* `Int64`
* `LocalizedText`
* `NodeId`
* `Null`
* `QualifiedName`
* `SByte`
* `StatusCode`
* `String`
* `UInt16`
* `UInt32`
* `UInt64`
* `Variant`
* `XmlElement`

#### `valueRank` (integer, enum)

The rank of the transported data, default is scalar (-1), use 1 for array of scalars

This element must be one of the following enum values:

* `-3`
* `-2`
* `-1`
* `0`
* `1`
* `2`

Default: `-1`

#### `arrayDimensions` (array)

For nodes that represent an array or a multi-dimensional array (e.g. a matrix), this array value specifies the size in each of the dimensions.

The object is an array with all elements of the type `number`.

Example: `[6,4]`

## `outputArguments` (array)

Output arguments for method nodes

The object is an array with all elements of the type `object`.

The array object has the following properties:

#### `name` (string, required)

The name of the argument

#### `description` (string)

Description of the argument

#### `dataType` (string, enum, required)

The data type of the argument

This element must be one of the following enum values:

* `Boolean`
* `Byte`
* `ByteString`
* `DataValue`
* `DateTime`
* `DiagnosticInfo`
* `Double`
* `ExpandedNodeId`
* `ExtensionObject`
* `Float`
* `Guid`
* `Int16`
* `Int32`
* `Int64`
* `LocalizedText`
* `NodeId`
* `Null`
* `QualifiedName`
* `SByte`
* `StatusCode`
* `String`
* `UInt16`
* `UInt32`
* `UInt64`
* `Variant`
* `XmlElement`

#### `valueRank` (integer, enum)

The rank of the transported data, default is scalar (-1), use 1 for array of scalars

This element must be one of the following enum values:

* `-3`
* `-2`
* `-1`
* `0`
* `1`
* `2`

Default: `-1`

#### `arrayDimensions` (array)

For nodes that represent an array or a multi-dimensional array (e.g. a matrix), this array value specifies the size in each of the dimensions.

The object is an array with all elements of the type `number`.

Example: `[6,4]`

## `dataType` (string)

The data type of this node. This can be either an OPC UA base type (see example values), or a node ID which references a data type node.

Examples: `"Boolean"`, `"Byte"`, `"ByteString"`, `"DataValue"`, `"DateTime"`, `"DiagnosticInfo"`, `"Double"`, `"ExpandedNodeId"`, `"ExtensionObject"`, `"Float"`, `"Guid"`, `"Int16"`, `"Int32"`, `"Int64"`, `"LocalizedText"`, `"NodeId"`, `"Null"`, `"QualifiedName"`, `"SByte"`, `"StatusCode"`, `"String"`, `"UInt16"`, `"UInt32"`, `"UInt64"`, `"Variant"`, `"XmlElement"`

## `serializeDataType` (string, enum)

For nodes where the data type is not an OPC UA base type but a node reference, the data type for serialization of values sometimes needs to be specified separately here. This must be a basic OPC UA data type.

This element must be one of the following enum values:

* `Boolean`
* `Byte`
* `ByteString`
* `DataValue`
* `DateTime`
* `DiagnosticInfo`
* `Double`
* `ExpandedNodeId`
* `ExtensionObject`
* `Float`
* `Guid`
* `Int16`
* `Int32`
* `Int64`
* `LocalizedText`
* `NodeId`
* `Null`
* `QualifiedName`
* `SByte`
* `StatusCode`
* `String`
* `UInt16`
* `UInt32`
* `UInt64`
* `Variant`
* `XmlElement`

## `valueRank` (integer, enum)

The rank of the transported data, default is scalar (-1), use 1 for array of scalars

This element must be one of the following enum values:

* `-3`
* `-2`
* `-1`
* `0`
* `1`
* `2`

Default: `-1`

## `arrayDimensions` (array)

For nodes that represent an array or a multi-dimensional array (e.g. a matrix), this array value specifies the size in each of the dimensions.

The object is an array with all elements of the type `number`.

Example: `[6,4]`
