> For the complete documentation index, see [llms.txt](https://api.senderwiz.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://api.senderwiz.com/customer/fields/update-a-list-field.md).

# Update a List Field

### ✏️ Update a List Field

Update an existing custom field in a subscriber list by providing its list UID and field ID.

#### 🔹 HTTP Request

```http
PUT API-URL/lists/LIST-UNIQUE-ID/fields/FIELD-ID
```

#### 🔸 URL Segments

| Segment          | Type   | Required | Description                     |
| ---------------- | ------ | -------- | ------------------------------- |
| `LIST-UNIQUE-ID` | string | Yes      | Unique identifier of the list.  |
| `FIELD-ID`       | string | Yes      | Unique identifier of the field. |

#### 🔐 Authorization Header

```
X-API-KEY: your-api-key-here
```

***

#### 📝 PUT Parameters

| Parameter           | Type    | Required | Description                                                    |
| ------------------- | ------- | -------- | -------------------------------------------------------------- |
| `label`             | string  | Yes      | Field label visible to users.                                  |
| `tag`               | string  | Yes      | Unique tag identifier (e.g., FNAME).                           |
| `required`          | yes/no  | Yes      | Whether the field is mandatory.                                |
| `visibility`        | string  | Yes      | Field visibility (`visible` or `hidden`).                      |
| `default_value`     | string  | No       | Pre-filled value shown in the field.                           |
| `sort_order`        | integer | No       | Position order of the field in the form.                       |
| `help_text`         | string  | No       | Helper text to guide users.                                    |
| `description`       | string  | No       | Description of the field.                                      |
| `min_length`        | integer | No       | Minimum allowed characters (for text fields).                  |
| `max_length`        | integer | No       | Maximum allowed characters (for text fields).                  |
| `content_rule`      | string  | No       | Rule for text fields (`alpha_ci`, `alphanum_ci`, etc.).        |
| `content_regex`     | string  | No       | Custom regex validation for field values.                      |
| `allowed_scheme`    | string  | No       | Used for URL field types (e.g., https).                        |
| `whitelist_domains` | string  | No       | Allowed domains (comma-separated) for URL fields.              |
| `blacklist_domains` | string  | No       | Blocked domains (comma-separated) for URL fields.              |
| `max_stars`         | integer | No       | Used in rating fields.                                         |
| `default_country`   | string  | No       | Country code (e.g., `us`, `ro`, `in`) for country field types. |

***

#### 📦 Options Block *(Optional)*

For field types like `dropdown`, `radio`, or `checkbox`, define selectable options.

| Parameter | Type   | Required | Description                           |
| --------- | ------ | -------- | ------------------------------------- |
| `name`    | string | Yes      | Option label shown to the user.       |
| `value`   | string | Yes      | Internal value stored for the option. |

***

#### 💻 PHP Example

```php
// update list field
$response = $endpoint->update('LIST-UNIQUE-ID', 'FIELD-ID', [
  'label'         => 'Text Label',
  'tag'           => 'DROPDOWN',
  'required'      => 'no',
  'visibility'    => 'visible',
  'sort_order'    => 0,
  'help_text'     => 'Help',
  'default_value' => '',
  'description'   => 'Description',
  'options'        => [
    [
      'name'  => 'Option1',
      'value' => 'Value1'
    ],
    [
      'name'  => 'Option2',
      'value' => 'Value2'
    ],
  ]
]);

// and get the response
echo '<pre>';
print_r($response->body);
echo '</pre>';
```

***

#### 📦 Sample JSON Response

```json
{
  "status": "success",
  "data": {
    "record": {
      "field_id": "111",
      "label": "Text Label",
      "tag": "DROPDOWN",
      "help_text": "Help",
      "description": "Description",
      "default_value": "",
      "required": "no",
      "visibility": "visible",
      "sort_order": "0",
      "type": {
        "name": "Dropdown",
        "identifier": "dropdown",
        "description": "Dropdown"
      },
      "list": {
        "list_uid": "lm451q7h7j3e2",
        "display_name": "My list"
      },
      "options": {
        "Value1": "Option1",
        "Value2": "Option2"
      }
    }
  }
}
```

***
