> ## Documentation Index
> Fetch the complete documentation index at: https://www.1password.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Item fields

When you [use 1Password CLI to create items](/cli/item-create/), you can customize your items with [built-in](#built-in-fields) and [custom](#custom-fields) fields.

Learn how to [add built-in and custom fields to your items](/cli/item-create/#create-a-customized-item) with either assignment statements or a JSON template.

## Built-in fields

Each item category includes a set of default fields, some of which may be specific to the category. You can identify available built-in fields by looking at the [JSON template](/cli/item-template-json/) for the item category:

```
op item template get <category>
```

<Accordion title="View all categories">
  * API Credential
  * Bank Account
  * Credit Card
  * Crypto Wallet
  * Database
  * Document
  * Driver License
  * Email Account
  * Identity
  * Login
  * Medical Record
  * Membership
  * Outdoor License
  * Passport
  * Password
  * Reward Program
  * Secure Note
  * Server
  * Social Security Number
  * Software License
  * SSH Key
  * Wireless Router
</Accordion>

For example, the built-in fields available on a Login item are `username`, `password`, and `notesPlain`.

<Accordion title="View a Login item JSON template">
  ```shell highlight={6,13,23} theme={null}
  {
    "title": "",
    "category": "LOGIN",
    "fields": [
      {
        "id": "username",
        "type": "STRING",
        "purpose": "USERNAME",
        "label": "username",
        "value": ""
      },
      {
        "id": "password",
        "type": "CONCEALED",
        "purpose": "PASSWORD",
        "label": "password",
        "password_details": {
          "strength": "TERRIBLE"
        },
        "value": ""
      },
      {
        "id": "notesPlain",
        "type": "STRING",
        "purpose": "NOTES",
        "label": "notesPlain",
        "value": ""
      }
    ]
  }
  ```
</Accordion>

When you use [assignment statements](/cli/item-create/#with-assignment-statements) to assign built-in fields, use the `id` from the JSON template as the `field` in the assignment statement. Don't include a fieldType for built-in fields.

For example, to add a note to a Login item using an assignment statement:

```shell theme={null}
'notesPlain=This is a note.'
```

## Custom fields

Custom fields can be added to any item, regardless of the item's category. Use the `fieldType` with [assignment statements](/cli/item-create/#with-assignment-statements) and the `type` with an [item JSON template](/cli/item-create/#with-an-item-json-template). Available custom field types are:

| `fieldType` | `type`       | description                                                                                                                                                                                                      |
| ----------- | ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `password`  | `CONCEALED`  | A concealed password.                                                                                                                                                                                            |
| `text`      | `STRING`     | A text string.                                                                                                                                                                                                   |
| `email`     | `EMAIL`      | An email address.                                                                                                                                                                                                |
| `url`       | `URL`        | A web address to copy or open in your default web browser, not used for autofill behavior. Use the `--url` flag to set the website where 1Password suggests and fills a Login, Password, or API Credential item. |
| `date`      | `DATE`       | A date with the format <code>YYYY-MM-DD</code>.                                                                                                                                                                  |
| `monthYear` | `MONTH_YEAR` | A date with the format <code>YYYYMM</code> or <code>YYYY/MM</code>.                                                                                                                                              |
| `phone`     | `PHONE`      | A phone number.                                                                                                                                                                                                  |
| `otp`       | `OTP`        | A one-time password. Accepts an [<code>otpauth://</code> URI](https://github.com/google/google-authenticator/wiki/Key-Uri-Format) as the value.                                                                  |
| `file`      | N/A          | A file attachment. Accepts the path to the file as the value. Can only be added with [assignment statements](/cli/item-create/#with-assignment-statements).                                                      |

## Learn more

* [`op item` reference documentation](/cli/reference/management-commands/item/)
* [Create an item](/cli/item-create/)
* [Item JSON template](/cli/item-template-json/)
* [Workflow: Build integrations with 1Password](/get-started/build-integrations)
