# Operations with Specific CustomField

This resource lets you work with the custom fields. In the old REST API we called them "prototypes".
|  Resource  |     ```GENERIC /api/admin/customFieldSettings/customFields/{fieldID} ```    |
| --- | --- |
|  Returned entity  |  [CustomField](api-entity-CustomField.html). For the description of the entity attributes, see [Supported Fields](#CustomField-supported-fields) section.  |
|  Supported methods  |      * `POST`: [Update a Specific CustomField](#update-CustomField-method).    * `DELETE`: [Delete a Specific CustomField](#delete-CustomField-method).    * `GET`: [Read a Specific CustomField](#get-CustomField-method).    |

## CustomField attributes

Represents a custom field in YouTrack.

### Related Resources

Below you can find the list of resources that let you work with this entity.

* [Custom Fields](resource-api-admin-customFieldSettings-customFields.html)

### Attributes

This table describes attributes of the `CustomField` entity.

* To receive an attribute in the response from the server, specify it explicitly in the `fields` request parameter.

* To update an attribute, provide it in the body of a POST request.

|  Field  |  Type  |  Description  |
| --- | --- | --- |
|  id  |  String  |  The ID of the custom field. `Read-only`.  |
|  name  |  String  |  The name of the custom field.  |
|  localizedName  |  String  |  If set, then this value is used for the field presentation in UI. `Can be null`.  |
|  fieldType  |  [FieldType](api-entity-FieldType.html)  |  The type of the custom field.  |
|  isAutoAttached  |  Boolean  |  If `true`, then the field will be automatically attached to new projects.  |
|  isDisplayedInIssueList  |  Boolean  |  If `true`, the field is visible in the Issues list by default.  |
|  ordinal  |  Int  |  Number of the field.  |
|  aliases  |  String  |  A comma-separated list of aliases that can be used in search and commands. `Can be null`.  |
|  fieldDefaults  |  [CustomFieldDefaults](api-entity-CustomFieldDefaults.html)  |  Default project-related settings for the custom field. May contain different values for custom fields of different types. `Read-only`.  |
|  hasRunningJob  |  Boolean  |  Indicates whether a background job is running for this field. In this case, some field operations may be temporary unavailable. `Read-only`.  |
|  isUpdateable  |  Boolean  |  Indicates whether the current user has permissions to update this field. `Read-only`.  |
|  instances  |  [Array of ProjectCustomFields](api-entity-ProjectCustomField.html)  |  Project-related settings. May contain different values for custom fields of different types  |

## Update a Specific CustomField

Update the custom field with the specific ID.

### Required permissions

Requires Update Project permission in all the projects where field is used. If field is auto-attached, Low-level Admin Write permission is required.

### Request syntax

```GENERIC
POST /api/admin/customFieldSettings/customFields/{fieldID}?{fields}
```

|  {fieldID}  |  Database ID of the custom field.  |
| --- | --- |

### Request parameters

|  Parameter  |  Type  |  Description  |
| --- | --- | --- |
|  fields  |  String  |  A list of CustomField attributes that should be returned in the response. If no field is specified, only the `entityID` is returned.  |

### Sample

#### Sample request

```CURL
https://example.youtrack.cloud/api/admin/customFieldSettings/customFields/58-5?fields=id,name,fieldType(id),fieldDefaults(canBeEmpty,emptyFieldText,bundle(id,name)),isDisplayedInIssueList,isPublic,isAutoAttached
```

#### Sample request body

```JSON
{
  "fieldDefaults": {
    "emptyFieldText": "No version"
  },
  "isDisplayedInIssueList": true,
  "isAutoAttached": true,
  "isPublic": false
}
```

#### Sample response body

```JSON
{
  "fieldType": {
    "id": "version[*]",
    "$type": "FieldType"
  },
  "isAutoAttached": true,
  "fieldDefaults": {
    "bundle": {
      "name": "Versions",
      "id": "71-0",
      "$type": "VersionBundle"
    },
    "emptyFieldText": "No version",
    "canBeEmpty": true,
    "$type": "VersionBundleCustomFieldDefaults"
  },
  "isDisplayedInIssueList": true,
  "name": "Fix versions",
  "id": "58-5",
  "$type": "CustomField"
}
```

## Delete a Specific CustomField

Delete the custom field with the specific ID.

### Required permissions

Requires Update Project permission in all the projects where field is used. If the field is auto-attached, Low-level Admin Write permission is required.

### Request syntax

```GENERIC
DELETE /api/admin/customFieldSettings/customFields/{fieldID}
```

|  {fieldID}  |  Database ID of the custom field.  |
| --- | --- |

### Request parameters

|  Parameter  |  Type  |  Description  |
| --- | --- | --- |
|  fields  |  String  |  A list of CustomField attributes that should be returned in the response. If no field is specified, only the `entityID` is returned.  |

### Sample

#### Sample request

```CURL
https://example.youtrack.cloud/api/admin/customFieldSettings/customFields/58-12
```

## Read a Specific CustomField

Read the custom field with the specific ID.

### Required permissions

Requires access to the field in any of the projects or Low-level Admin Read permission or Update Project permission

### Request syntax

```GENERIC
GET /api/admin/customFieldSettings/customFields/{fieldID}?{fields}
```

|  {fieldID}  |  Database ID of the custom field.  |
| --- | --- |

### Request parameters

|  Parameter  |  Type  |  Description  |
| --- | --- | --- |
|  fields  |  String  |  A list of CustomField attributes that should be returned in the response. If no field is specified, only the `entityID` is returned.  |

### Sample

#### Sample request

```CURL
https://example.youtrack.cloud/api/admin/customFieldSettings/customFields/58-8?fields=id,name,fieldType(presentation,id),isUpdateable,isAutoAttached,isDisplayedInIssueList
```

#### Sample response body

```JSON
{
  "fieldType": {
    "presentation": "date",
    "id": "date",
    "$type": "FieldType"
  },
  "isAutoAttached": false,
  "isDisplayedInIssueList": true,
  "isUpdateable": true,
  "name": "Due Date",
  "id": "58-8",
  "$type": "CustomField"
}
```

