# Types

{% hint style="success" %}
This is the official documentation of Forest Admin Cloud.
{% endhint %}

Forest Admin fields can have different types to represent the data they store. These types fall into two categories: `Primitive` and `Composite`.

**Primitive Types**

Primitive types are basic types that directly represent the data. These types are:

* *<mark style="color:green;">Boolean</mark>*: Represents true or false values.
* *<mark style="color:green;">Date</mark>*: Represents a date and time in the ISO-8601 format.
* *<mark style="color:green;">Dateonly</mark>*: Represents only the date part in the format YYYY-MM-DD.
* *<mark style="color:green;">Enum</mark>*: Represents a predefined set of string values.
* *<mark style="color:green;">JSON</mark>*: Represents any data in JSON format.
* *<mark style="color:green;">Number</mark>*: Represents numerical values.
* *<mark style="color:green;">Point</mark>*: Represents geographical coordinates with two numbers.
* *<mark style="color:green;">String</mark>*: Represents a text.
* *<mark style="color:green;">Timeonly</mark>*: Represents only the time part in the format HH:MM:SS.
* *<mark style="color:green;">Uuid</mark>*: Represents a unique identifier using the uuid v4 format.

**Composite Types**

Composite types are combinations of primitive types to represent more complex data. These types are:

* *<mark style="color:green;">Object</mark>*: Represents an object containing multiple key-value pairs.
* *<mark style="color:green;">\[Any primite type]</mark>*: Represents an array of a single primitive type.
* *<mark style="color:green;">\[Object]</mark>*: Represents an array of objects with multiple key-value pairs.
* *<mark style="color:green;">\[\['Number']]</mark>*: Represents an object that contains a two-dimensional array of numbers.

Composite types are not sortable, do not support validation, and may be displayed differently in the Forest Admin UI. Arrays of primitive types may be filterable, depending on the data source.

When using composite types, the data in the UI may not be displayed as expected and might require using a JSON editor or custom widgets for editing.
