# Customization: Update custom Test Case fields on push

The *Custom field updates* customization can be used to update arbitrary Test Case fields that are otherwise would not be changed by SpecSync.

{% hint style="warning" %}
The configuration setting `customizations/customFieldUpdates` has been replaced by `synchronization/fieldUpdates`. See [Update Test Case fields](/specsync/features/push-features/update-test-case-fields.md) feature description for details.

This feature has been deprecated in v5 and will be removed in the next release. Please use the `specsync upgrade` command to upgrade the configuration to the replacement feature.
{% endhint %}

{% hint style="info" %}
The *Custom field updates* customization described here is an [Enterprise feature](/specsync/licensing.md).
{% endhint %}

In order to enable this customization, the `customizations/customFieldUpdates` section of the configuration has to be enabled. The complete reference of the configuration settings can be found in the [customizations configuration reference](/specsync/reference/configuration/configuration-customizations.md#customfieldupdates).

The following example shows a basic configuration that initializes the *Description* field to a message containing the feature name.

```javascript
{
  ...
 "customizations": {
    "customFieldUpdates": {
      "enabled": true,
      "updates": {
        "System.Description": "Synchronized from feature {feature-name}"
      }
    }
  }
  ...
}
```

The fields have to be identified using their reference name and *not their label*. E.g. the reference name for the *Description* field is `System.Description`. The reference names of the built-in fields can be found in the [Azure DevOps documentation](https://docs.microsoft.com/en-us/azure/devops/boards/work-items/guidance/work-item-field?view=azure-devops). The reference name of the custom fields can be obtained from the Azure DevOps project administrator, but usually they follow the format `Custom.<your-field-name>` (e.g. `Custom.BusinessRule`).

{% hint style="warning" %}
Specifying an update for a field that is also updated by SpecSync (e.g. Title) causes unpredictable behavior.
{% endhint %}

The specified value is a template to be used to update the field. The template can contain placeholders listed in the [reference](/specsync/reference/configuration/configuration-synchronization/configuration-synchronization-fieldupdates.md#update-placeholders).

The specified fields are only updated when the Test Case would otherwise change. If the test case is up-to-date, the custom fields are not going to be updated.

To initialize custom fields with a default value, use the [*Field defaults* customization](/specsync/features/push-features/customization-setting-test-case-fields-with-default-values.md).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.specsolutions.eu/specsync/features/push-features/customization-update-custom-test-case-fields-on-push.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
