# Custom Field

Custom Fields are client defined attributes for a particular resource like product, consignment etc. A custom property is a property that you create to meet your unique needs.

{% tabs %}
{% tab title="Attributes" %}

| Attribute      | Type                          | Description                                                                                       |
| -------------- | ----------------------------- | ------------------------------------------------------------------------------------------------- |
| `label`        | `String`                      | It is the name with which the property will be identified eg. `color`, `style code`, etc.         |
| `internalName` | `String`                      | It is the unique name of the property within a workspace eg. `mfg date`, `product category`, etc. |
| `description`  | `String`                      | Short description of the property eg. `product color`, `check_date`, etc.                         |
| `isUnique`     | `boolean`                     | It states whether the property is unique or not  eg. `yes`, `no`.                                 |
| `fieldType`    | `string`                      | It is the data type of property .For details refer [The FieldType Object](#the-fieldtype-object). |
| `options`      | `object`                      | Options are there, when the client selects `single_selects` or `multi_selects`.                   |
| `scope`        | [`object`](#the-scope-object) | It is the name of the module to which property can be assigned.                                   |
| `createdAt`    | `String`                      | Creation date and time.                                                                           |
| `updatedAt`    | `String`                      | Updated date and time.                                                                            |
| {% endtab %}   |                               |                                                                                                   |

{% tab title="Sample Json" %}

```
{
            "label": "fabric",
            "internalName": "style type",
            "description": "this is style code type property",
            "isUnique": "no",
            "fieldType": "multi_select",
            "options": [
                "rock",
                "classy"
            ],
            "scope": [
                "order"
            ],
            "createdAt": "2020-03-09T17:16:20.645+05:30",
            "updatedAt": "2020-03-13T12:27:05.981+05:30"
        }
```

{% endtab %}
{% endtabs %}

## The FieldType Object

| fieldType       |
| --------------- |
| `short_text`    |
| `long_text`     |
| `date_picker`   |
| `single_select` |
| `multi_select`  |
| `attachment`    |

## The Scope Object

| scope                |
| -------------------- |
| `product`            |
| `listing`            |
| `inventory`          |
| `order`              |
| `return`             |
| `inward consignment` |
| `recall consignment` |
| `invoice`            |
| `expense`            |
| `payment`            |
