# NewCharacteristicInput

input type

Create-input for a Characteristic. The tenant (org group) is derived SERVER-SIDE from the principal — NEVER supplied here. STRICT invariants: pattern-type requires a compiling grammar.pattern; number/date take NO grammar; unit only on number, naming a canned UoM.

## Fields

| Field | Type | Required | Notes |
| --- | --- | --- | --- |
| `caption` | [String](/types/#scalars) | no | Optional: when omitted the per-type default applies — the merchant code when given, else 'Characteristic'; when supplied it must be non-blank. |
| `valueType` | [CharacteristicValueType](/types/CharacteristicValueType/) `CharacteristicValueType!` | yes | The value type — immutable after birth. |
| `grammar` | [CharacteristicGrammarInput](/types/CharacteristicGrammarInput/) | no | No further notes. |
| `unit` | [String](/types/#scalars) | no | A canned-UoM unit code (number-typed characteristics only). |
| `code` | [String](/types/#scalars) | no | No further notes. |

## Used by

- [createCharacteristic](/reference/characteristic/createCharacteristic/)
