---
title: "managedTypedValue"
url: https://developers.dagio.ai/reference/managed-typed-value/
---

# managedTypedValue

   
                          
                                                                            
                                     
                  
           
          
   

This reference describes the full structure of `managedTypedValue`. Paths include nested objects, list items and conditional branches. A branch selected by `kind`, `contract` or `mode` only admits its own properties.

## Structure and values

| Field | Options / expected values | Description |
| --- | --- | --- |
| `[kind=text].kind` | `"text"` | **Required.** Selects the variant and the properties admitted in this branch. |
| `[kind=text].minimumLength` | `integer; ≥ 0; ≤ 1000000` | **Required.** Cardinality or budget bound for the named resource. Exceeding the bound is refused; null denotes no bound only where admitted by the schema. |
| `[kind=text].maximumLength` | `integer; ≥ 0; ≤ 1000000` | **Required.** Cardinality or budget bound for the named resource. Exceeding the bound is refused; null denotes no bound only where admitted by the schema. |
| `[kind=boolean].kind` | `"boolean"` | **Required.** Selects the variant and the properties admitted in this branch. |
| `[kind=integer].kind` | `"integer"` | **Required.** Selects the variant and the properties admitted in this branch. |
| `[kind=integer].minimum` | `string; max length 1001; /^(?:0\|-?[1-9][0-9]{0,999})(?![\s\S])/u` | **Required.** Cardinality or budget bound for the named resource. Exceeding the bound is refused; null denotes no bound only where admitted by the schema. |
| `[kind=integer].maximum` | `string; max length 1001; /^(?:0\|-?[1-9][0-9]{0,999})(?![\s\S])/u` | **Required.** Cardinality or budget bound for the named resource. Exceeding the bound is refused; null denotes no bound only where admitted by the schema. |
| `[kind=integer].unit` | `closed object OR closed object OR closed object` | **Required.** Defines unit for this object. Observe the type, variants and bounds in the Options column. |
| `[kind=integer].unit.[kind=dimensionless].kind` | `"dimensionless"` | **Required.** Selects the variant and the properties admitted in this branch. |
| `[kind=integer].unit.[kind=unit].kind` | `"unit"` | **Required.** Selects the variant and the properties admitted in this branch. |
| `[kind=integer].unit.[kind=unit].key` | `string; min length 1; max length 120; /^[a-z][a-z0-9-]*$/u` | **Required.** Stable semantic identifier used by references; changing it changes identity. |
| `[kind=integer].unit.[kind=currency].kind` | `"currency"` | **Required.** Selects the variant and the properties admitted in this branch. |
| `[kind=integer].unit.[kind=currency].key` | `string; min length 1; max length 120; /^[a-z][a-z0-9-]*$/u` | **Required.** Stable semantic identifier used by references; changing it changes identity. |
| `[kind=real].kind` | `"real"` | **Required.** Selects the variant and the properties admitted in this branch. |
| `[kind=real].representation` | `"binary64"` | **Required.** Defines representation for this object. Observe the type, variants and bounds in the Options column. |
| `[kind=real].precisionBits` | `53` | **Required.** Defines precision Bits for this object. Observe the type, variants and bounds in the Options column. |
| `[kind=real].minimum` | `number` | **Required.** Cardinality or budget bound for the named resource. Exceeding the bound is refused; null denotes no bound only where admitted by the schema. |
| `[kind=real].maximum` | `number` | **Required.** Cardinality or budget bound for the named resource. Exceeding the bound is refused; null denotes no bound only where admitted by the schema. |
| `[kind=real].tolerance` | `closed object` | **Required.** Defines tolerance for this object. Observe the type, variants and bounds in the Options column. |
| `[kind=real].tolerance.absolute` | `number; ≥ 0` | **Required.** Defines absolute for this object. Observe the type, variants and bounds in the Options column. |
| `[kind=real].tolerance.relative` | `number; ≥ 0` | **Required.** Defines relative for this object. Observe the type, variants and bounds in the Options column. |
| `[kind=real].unit` | `closed object OR closed object` | **Required.** Defines unit for this object. Observe the type, variants and bounds in the Options column. |
| `[kind=real].unit.[kind=dimensionless].kind` | `"dimensionless"` | **Required.** Selects the variant and the properties admitted in this branch. |
| `[kind=real].unit.[kind=unit].kind` | `"unit"` | **Required.** Selects the variant and the properties admitted in this branch. |
| `[kind=real].unit.[kind=unit].key` | `string; min length 1; max length 120; /^[a-z][a-z0-9-]*$/u` | **Required.** Stable semantic identifier used by references; changing it changes identity. |
| `[kind=choice].kind` | `"choice"` | **Required.** Selects the variant and the properties admitted in this branch. |
| `[kind=choice].labelLocale` | `string; min length 2; max length 100; /^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*(?![\s\S])/u` | **Required.** Defines label Locale for this object. Observe the type, variants and bounds in the Options column. |
| `[kind=choice].choices` | `Array<closed object>; min length 1; max length 1000` | **Required.** Defines choices for this object. Observe the type, variants and bounds in the Options column. |
| `[kind=choice].choices[].key` | `string; min length 1; max length 120; /^[a-z][a-z0-9-]*(?![\s\S])/u` | **Required.** Stable semantic identifier used by references; changing it changes identity. |
| `[kind=choice].choices[].labels` | `Record<string; min length 2; max length 100; /^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*(?![\s\S])/u, string; min length 1; max length 4000>` | **Required.** Defines labels for this object. Observe the type, variants and bounds in the Options column. |
| `[kind=decimal].precision` | `integer; ≥ 1; ≤ 1000` | **Required.** Defines precision for this object. Observe the type, variants and bounds in the Options column. |
| `[kind=decimal].scale` | `integer; ≥ 0; ≤ 1000` | **Required.** Defines scale for this object. Observe the type, variants and bounds in the Options column. |
| `[kind=decimal].kind` | `"decimal"` | **Required.** Selects the variant and the properties admitted in this branch. |
| `[kind=decimal].unit` | `closed object OR closed object OR closed object` | **Required.** Defines unit for this object. Observe the type, variants and bounds in the Options column. |
| `[kind=decimal].unit.[kind=dimensionless].kind` | `"dimensionless"` | **Required.** Selects the variant and the properties admitted in this branch. |
| `[kind=decimal].unit.[kind=unit].kind` | `"unit"` | **Required.** Selects the variant and the properties admitted in this branch. |
| `[kind=decimal].unit.[kind=unit].key` | `string; min length 1; max length 120; /^[a-z][a-z0-9-]*$/u` | **Required.** Stable semantic identifier used by references; changing it changes identity. |
| `[kind=decimal].unit.[kind=currency].kind` | `"currency"` | **Required.** Selects the variant and the properties admitted in this branch. |
| `[kind=decimal].unit.[kind=currency].key` | `string; min length 1; max length 120; /^[a-z][a-z0-9-]*$/u` | **Required.** Stable semantic identifier used by references; changing it changes identity. |
| `[kind=decimal].minimum` | `string; max length 1003; optional` | Optional. Cardinality or budget bound for the named resource. Exceeding the bound is refused; null denotes no bound only where admitted by the schema. |
| `[kind=decimal].maximum` | `string; max length 1003; optional` | Optional. Cardinality or budget bound for the named resource. Exceeding the bound is refused; null denotes no bound only where admitted by the schema. |
| `[kind=object].kind` | `"object"` | **Required.** Selects the variant and the properties admitted in this branch. |
| `[kind=object].properties` | `Array<closed object>; max length 100` | **Required.** Defines properties for this object. Observe the type, variants and bounds in the Options column. |
| `[kind=object].properties[].key` | `string; min length 1; max length 120; /^[a-zA-Z][a-zA-Z0-9]*$/u` | **Required.** Stable semantic identifier used by references; changing it changes identity. |
| `[kind=object].properties[].required` | `true \| false` | **Required.** Whether a value is required by this declaration. |
| `[kind=object].properties[].nullable` | `true \| false` | **Required.** Defines nullable for this object. Observe the type, variants and bounds in the Options column. |
| `[kind=object].properties[].schema` | `recursive reference` | **Required.** Defines schema for this object. Observe the type, variants and bounds in the Options column. |
| `[kind=object].properties[].schema ↻` | `recursive reference to parent expression` | Optional. Defines schema ↻ for this object. Observe the type, variants and bounds in the Options column. |
| `[kind=list].kind` | `"list"` | **Required.** Selects the variant and the properties admitted in this branch. |
| `[kind=list].minimumItems` | `integer; ≥ 0; ≤ 1000` | **Required.** Cardinality or budget bound for the named resource. Exceeding the bound is refused; null denotes no bound only where admitted by the schema. |
| `[kind=list].maximumItems` | `integer; ≥ 0; ≤ 1000` | **Required.** Cardinality or budget bound for the named resource. Exceeding the bound is refused; null denotes no bound only where admitted by the schema. |
| `[kind=list].itemsNullable` | `true \| false` | **Required.** Defines items Nullable for this object. Observe the type, variants and bounds in the Options column. |
| `[kind=list].items` | `recursive reference` | **Required.** Defines items for this object. Observe the type, variants and bounds in the Options column. |
| `[kind=list].items ↻` | `recursive reference to parent expression` | Optional. Defines items ↻ for this object. Observe the type, variants and bounds in the Options column. |

## Reading the contract

A path ending in `[]` describes each list item; `{key}` describes each dictionary value. The `↻` marker refers to the same recursive expression. Closed objects reject additional properties. Semantic validation denotes an additional check: matching a type does not make a reference, permission or transition valid. References must resolve in the Model and the current user context.

An older variant cannot accept properties belonging to a newer variant. The compiler checks the version and consistency of the complete Model.

## Structural example

This fragment passes the schema for this section. Its business references must be defined in the enclosing Model.

```json
{
  "kind": "integer",
  "minimum": "0",
  "maximum": "1000000000",
  "unit": {
    "kind": "unit",
    "key": "word"
  }
}
```

## Related references

[Complete Model index](https://developers.dagio.ai/reference/) · [Build a Model](https://developers.dagio.ai/models/)

<!-- surface-examples:start -->

## Applied examples : Required text and business choices

Company uses required text input; Status uses a declared list of choices.

### Configuration

Contract object `managedTypedValue`. [Properties and accepted values](https://developers.dagio.ai/reference/managed-typed-value/).

```json
{
  "kind": "integer",
  "minimum": "0",
  "maximum": "1000000000",
  "unit": {
    "kind": "unit",
    "key": "word"
  }
}
```

### Variation and connection

Fragment placed in `forms[].fields[]`. [Properties and accepted values](https://developers.dagio.ai/reference/workspace-model-foundation/).

```json
{
  "contract": "WorkspaceFormControl@2",
  "repeatable": false,
  "key": "status",
  "label": "Status",
  "input": "choice",
  "binding": {
    "kind": "field",
    "fieldKey": "status"
  },
  "required": true,
  "ruleKeys": [],
  "options": [
    "prospect",
    "active"
  ]
}
```

### UI layout example

The illustrative layout below places this configuration in the Clients/Quotes app. Insert each fragment at the stated location, with Field, Query and Action references matching the Model declarations.

1. Client identity
2. Notes and follow-up
3. Settings
4. Linked quotes

<!-- surface-examples:end -->
