> ## Documentation Index
> Fetch the complete documentation index at: https://docsy3.mile.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Introduction

> Define the kinds of records your organization keeps, such as customers, stores or products, and the fields each record has.

A **data type** is the structure for one kind of record, such as *Customer*, *Store* or *Product*. It lists the fields every record has: a code, a name, a phone number, a coordinate, a link to another record, and so on. The records themselves are kept in [Data Source](https://docsy3.mile.app/pages/workflow/data-source/introduction.md).

Once a data type has records, a flow can use them to fill task fields automatically: pick a customer on the web app or in the field app and the phone number, address and coordinate fill in by themselves. That is set up on the flow, see [Configuration › Data source](https://docsy3.mile.app/pages/workflow/flow/configuration.md#data-source).

Open **Data Type** in the menu.

> [!NOTE]
>
> Required permission:
>
> * View data type
> * Create data type, Edit data type, Delete data type to change data types

## The data type list

![Data type list](https://mintcdn.com/mile-app/JlYib2YfcGFk65pR/images/v4/workflow/data/data-type-list.png?fit=max\&auto=format\&n=JlYib2YfcGFk65pR\&q=85\&s=5ebe1096ec05f48cdaa805ebb52a81d6)

1. **Search all data types**: find a data type by name. The search covers every data type, not only the current page.
2. **Group by**: group the list (see below). **None** shows one flat list.
3. **New**: create a data type. See [Creating a data type](https://docsy3.mile.app/pages/workflow/data-type/creating-a-data-type.md).
4. The table columns:

   * **No.**: row number.
   * **Data Type**: the name of the data type.
   * **Scope Data by Hub**: **Yes** means every record belongs to one hub and people see only the records of the hub they are working in. **No** means the records are shared by all hubs.
   * **Fields**: how many fields the data type has, not counting relations.
   * **Relation**: how many **Relation** fields it has, that is, links to another data type or to built-in data.
   * **Created at**: the date the data type was created.
   * **Scope Data by User**: **Yes** means each record can be scoped to chosen users.
   * **Actions**: the **More actions** (**⋯**) button, see step 6. Some data types can't be deleted, see [Delete a data type](https://docsy3.mile.app/pages/workflow/data-type/editing-and-deleting.md#delete-a-data-type).

   A data type that is being prepared shows a **Preparing** badge, and its Edit and Delete are disabled until it is ready. See [Older data types](#older-data-types).
5. **Master Data**: the built-in data types **User**, **Hub**, **Vehicle** and **Role**. You can add your own fields to them, for example a *Region* on every hub, but you cannot delete them.
6. **More actions** (**⋯**): **Edit** and **Delete** a data type. See [Editing and deleting](https://docsy3.mile.app/pages/workflow/data-type/editing-and-deleting.md).

## Group the list

Open **Group by** to group the data types.

![Group by options](https://mintcdn.com/mile-app/JlYib2YfcGFk65pR/images/v4/workflow/data/data-type-group-by.png?fit=max\&auto=format\&n=JlYib2YfcGFk65pR\&q=85\&s=73599a880a9642cf82e1b3c6bfe5d3ad)

* **None**: no groups.
* **Relation**: one **Connected by relations** group for each set of data types linked to each other by Relation fields, then **Extensions** (the Master Data types), then **Standalone** (data types with no links to another data type). In a **Connected by relations** group, each row says which data types it links to, for example *Links to Store*.
* **Master Data**: **Master Data** first, then **Other data types**.
* **Scope Data by Hub**: **Yes** (scoped by hub), then **No** (shared by every hub).
* **Scope Data by User**: **On**, then **Off**.
* **Created month**: one group per month the data types were created. The Master Data types have no creation date and are grouped under **Unknown date**.

Each group heading shows how many data types it holds and can be collapsed. The list remembers the grouping you chose in this browser. This is the list grouped by **Relation**, where *Customer* and *Store* are connected by Store's *Customer* field:

![Data types grouped by relation](https://mintcdn.com/mile-app/JlYib2YfcGFk65pR/images/v4/workflow/data/data-type-grouped-relation.png?fit=max\&auto=format\&n=JlYib2YfcGFk65pR\&q=85\&s=cccc6d663c1b14228dd5e08d90f72057)

## Older data types

A data type set up in the older version of the web app keeps working there, and in the mobile app, until you add a feature that only this version supports. You can open it, edit it and save it here like any other data type. Its records can be searched by any value here too.

These features only work in this version:

* A **Checkbox**, **Multi option** or **Relation** field.
* **Unique** on a field, or **Unique together**.
* **Field rules**: a minimum, maximum or number of decimals.

### What's new

An older data type shows a **What's new** link beside **Scope Data by User**. Click it to see what this version adds:

* **Search by any value**: find a record by anything shown in its columns, not only its title.
* **New field types**: **Checkbox**, **Multi option** and **Relation**.
* **Connect your data**: link records across data types, like a Product to its Brand, and see every record that links back.
* **No more duplicates**: make a field unique, like an SKU, or a combination of fields.

![The What's new dialog](https://mintcdn.com/mile-app/JlYib2YfcGFk65pR/images/v4/workflow/data/data-type-whats-new.png?fit=max\&auto=format\&n=JlYib2YfcGFk65pR\&q=85\&s=56e841be059ea25ce3123b4499e08598)

*What's new lists the features this version adds.*

### Adding a feature only this version supports

A field or setting that uses one of these features shows a warning icon. Point at it to read *Only works in v4*.

Click **Save**, and you are asked first: *{name} will stop working in the older version*, followed by the features that cause it and the flows, automations, reports and order types that use the data type.

![Saving an older data type with a Checkbox field asks first](https://mintcdn.com/mile-app/JlYib2YfcGFk65pR/images/v4/workflow/data/data-type-v4-only-save.png?fit=max\&auto=format\&n=JlYib2YfcGFk65pR\&q=85\&s=8c4c8df77465f89dd426308a30f28481)

*Saving a feature only this version supports asks first and says why.*

* **Cancel**: nothing is saved, and the data type keeps working in the older version.
* **Save anyway**: the data type is saved. People using the older web app or mobile app no longer see it. This can't be undone.

Once saved, the warning icons and this question no longer appear for that data type.

Turning **Unique** on checks the existing records first. If two records already share a value, Save lists them and nothing is saved, so you can fix them first.

### Preparing

After **Save anyway**, the records are prepared, and **Preparing** shows while that runs.

* On **Data Type**, its row has a **Preparing** badge, and **Edit** and **Delete** are disabled until it finishes.
* On **Data Source**, the records show with a progress bar such as *Preparing data type: 480 of 1240 records*. Search and changes are paused until it finishes.

![Data Source while a data type is being prepared](https://mintcdn.com/mile-app/JlYib2YfcGFk65pR/images/v4/workflow/data/data-source-preparing.png?fit=max\&auto=format\&n=JlYib2YfcGFk65pR\&q=85\&s=dcadd1a439dbe03d6ade8f42424e06d1)

*Search and changes pause while the records are prepared.*

The page checks the progress every 3 seconds and reloads the records when the data type is ready. If the progress stops for more than 5 minutes, the bar says *This is taking longer than expected.* and shows **Resume** on the Data Source page. Click it to continue where it stopped.

Changes made elsewhere while the data type is being prepared, for example through an automation or the API, are refused with *This data type is being prepared. Please wait until it is ready.*

## External data sources

Earlier versions could also create an **external** data type that read its records from another system's API instead of storing them. The web app can't create new external data types. Data types already set up as external keep their configuration, but the Data Source page lists only internal data types, so their records aren't shown there.

## In this section

* [Creating a data type](https://docsy3.mile.app/pages/workflow/data-type/creating-a-data-type.md)
* [Field types](https://docsy3.mile.app/pages/workflow/data-type/field-types.md)
* [Editing and deleting](https://docsy3.mile.app/pages/workflow/data-type/editing-and-deleting.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.