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

# custom-field

> Define, update, and delete custom field definitions for contacts, companies, and deals.

Custom fields let you extend contacts, companies, and deals with data specific to your business — contract tiers, lead sources, or anything else the built-in fields don't cover.

## moss custom-field list

List custom field definitions.

```bash theme={null}
moss custom-field list
moss custom-field list --entity-type contact
```

| Option                 | Required | Description                                            |
| ---------------------- | -------- | ------------------------------------------------------ |
| `--entity-type <type>` | No       | Filter by entity type: `contact`, `company`, or `deal` |
| `--page <n>`           | No       | Page number                                            |
| `--per-page <n>`       | No       | Items per page                                         |
| `--sort <field>`       | No       | Sort field                                             |
| `--order <dir>`        | No       | Sort order (`asc` or `desc`)                           |

## moss custom-field show

Show a custom field definition.

```bash theme={null}
moss custom-field show --id cfd_abc123
```

| Option      | Required | Description                |
| ----------- | -------- | -------------------------- |
| `--id <id>` | Yes      | Custom field definition ID |

## moss custom-field create

Create a new custom field definition.

```bash theme={null}
moss custom-field create \
  --entity-type contact \
  --field-name "contract_tier" \
  --field-label "Contract Tier" \
  --field-type select \
  --field-options "starter,pro,enterprise" \
  --required
```

| Option                   | Required | Description                                                         |
| ------------------------ | -------- | ------------------------------------------------------------------- |
| `--entity-type <type>`   | Yes      | Entity type: `contact`, `company`, or `deal`                        |
| `--field-name <name>`    | Yes      | Field name in `snake_case`                                          |
| `--field-label <label>`  | Yes      | Human-readable display label                                        |
| `--field-type <type>`    | Yes      | Field type: `text`, `number`, `date`, `select`, `url`, or `boolean` |
| `--field-options <opts>` | No       | Comma-separated options (for `select` type)                         |
| `--required`             | No       | Mark field as required                                              |
| `--display-order <n>`    | No       | Display order (default: 0)                                          |

<Tip>
  Once created, `--field-name` and `--field-type` cannot be changed. Choose carefully.
</Tip>

## moss custom-field update

Update a custom field definition. Field name and type cannot be changed after creation.

```bash theme={null}
moss custom-field update --id cfd_abc123 --field-label "Support Tier"
```

| Option                   | Required | Description                                 |
| ------------------------ | -------- | ------------------------------------------- |
| `--id <id>`              | Yes      | Custom field definition ID                  |
| `--field-label <label>`  | No       | Display label                               |
| `--field-options <opts>` | No       | Comma-separated options (for `select` type) |
| `--required <bool>`      | No       | Required: `true` or `false`                 |
| `--display-order <n>`    | No       | Display order                               |

## moss custom-field delete

Delete a custom field definition. This also removes all values of this field from all entities.

```bash theme={null}
moss custom-field delete --id cfd_abc123 --confirm
```

| Option      | Required | Description                                            |
| ----------- | -------- | ------------------------------------------------------ |
| `--id <id>` | Yes      | Custom field definition ID                             |
| `--confirm` | Yes      | Confirm deletion (required for destructive operations) |

<Warning>
  Deleting a custom field permanently removes it and all its values from every entity. This cannot be undone.
</Warning>
