---
updatedAt: 2026-06-26T09:23:34.000Z
agentTools:
  projectIndex: https://developers.kommo.com/llms.txt
---

# Update custom fields

This method allows updating multiple custom fields of an entity (leads/contacts/companies)

**Limitations**\
The method is available for administrator users only.

**Data type header when the request is successful**\
Content-Type: application/hal+json

**Data type header in case of an error**\
Content-Type: application/problem+json

## Response parameters

| Parameter                                | Data type    | Description                                                                                                                                                                                                                                                                      |
| :--------------------------------------- | :----------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| id                                       | int          | Field ID                                                                                                                                                                                                                                                                         |
| name                                     | string       | Field name                                                                                                                                                                                                                                                                       |
| code                                     | string       | Field code that can be used to update the value of the field without passing the field ID in the request.                                                                                                                                                                        |
| sort                                     | int          | Field sorting                                                                                                                                                                                                                                                                    |
| type                                     | int          | <Anchor label="Field type" target="_blank" href="https://developers.kommo.com/reference/custom-fields#available-field-types">Field type</Anchor>                                                                                                                                 |
| entity\_type                             | string       | Entity type (leads, contacts, companies).                                                                                                                                                                                                                                        |
| is\_predefined                           | bool         | Defines whether the field is predefined. This parameter is returned only when getting a contact or company fields list.                                                                                                                                                          |
| is\_deletable                            | bool         | Defines whether the field is deletable. This parameter is returned only when getting a contact or company fields list.                                                                                                                                                           |
| currency                                 | string\|null | Field currency code. Applicable only to the `monetary` field type. null for other field types.                                                                                                                                                                                   |
| remind                                   | string\|null | Birthday reminders setting (never, day – day before the event, week – week before the event, month – month before the event). This value is available only for the birthday type field. This parameter is returned only when getting a list of lead, contact, or company fields. |
| enums                                    | array\|null  | Available field values array. Only available for the fields with enum values.                                                                                                                                                                                                    |
| enums\[0]                                | object       | Available field values model                                                                                                                                                                                                                                                     |
| enums\[id]                               | int          | Enum ID                                                                                                                                                                                                                                                                          |
| enums\[value]                            | string       | Enum value                                                                                                                                                                                                                                                                       |
| enums\[sort]                             | int          | Enum sorting                                                                                                                                                                                                                                                                     |
| is\_api\_only                            | bool         | Defines whether the field is editable via API only. This parameter is returned only when getting a lead, contact, or company fields list.                                                                                                                                        |
| group\_id                                | string\|null | Fields group ID for the current field. This parameter is returned only when getting a lead, contact or company fields list.                                                                                                                                                      |
| required\_statuses                       | array\|null  | Array of the fields required to change a lead status. This parameter is returned only when getting a lead, contact, or company fields list.                                                                                                                                      |
| required\_statuses\[0]                   | object       | Required field model. This parameter is returned only when getting a lead, contact, or company fields list.                                                                                                                                                                      |
| required\_statuses\[status\_id]          | int          | ID of the stage which requires the current field to have a value before the lead can be moved. This parameter is returned only when getting a lead, contact, or company fields list.                                                                                             |
| required\_statuses\[pipeline\_id]        | int          | ID of the pipeline which requires the current field to have a value before the lead can be moved. This parameter is returned only when getting a lead, contact, or company fields list.                                                                                          |
| hidden\_statuses                         | array        | Field hiding configuration. Fields are hidden in the UI based on their pipeline stage. This key is returned only when retrieving the list of lead fields.                                                                                                                        |
| hidden\_statuses\[0]                     | object       | Field hiding configuration model.                                                                                                                                                                                                                                                |
| hidden\_statuses\[0]\[status\_id]        | int          | ID of the stage in which the field is hidden.                                                                                                                                                                                                                                    |
| hidden\_statuses\[0]\[pipeline\_id]      | int          | ID of the pipeline in which the field is hidden.                                                                                                                                                                                                                                 |
| chained\_lists                           | array\|null  | Configuration of a `chained_list` type field. The key is returned only when retrieving the list of lead fields.                                                                                                                                                                  |
| chained\_lists\[0]                       | obj          | Chained list configuration model.                                                                                                                                                                                                                                                |
| chained\_lists\[0]\[title]               | string\|null | The name of the chained list displayed in the lead card.                                                                                                                                                                                                                         |
| chained\_lists\[0]\[catalog\_id]         | int          | ID of the catalog                                                                                                                                                                                                                                                                |
| chained\_lists\[0]\[parent\_catalog\_id] | int          | ID of the parent catalog                                                                                                                                                                                                                                                         |
| tracking\_callback                       | string       | A JavaScript callback function that executes on the page containing a Website Chat Button and a Kommo webform when data is submitted. This value is returned for fields of the `tracking_data` type.                                                                             |
| search\_in                               | string\|null | ID of the catalog or symbolic code (contacts, companies, contacts\_and\_companies) for a field of the `linked_entity` type.                                                                                                                                                      |

# OpenAPI definition

```json
{
  "openapi": "3.1.0",
  "info": {
    "title": "kommo-api-references",
    "version": "1.0"
  },
  "servers": [
    {
      "url": "https://{subdomain}.kommo.com",
      "variables": {
        "subdomain": {
          "default": "subdomain"
        }
      }
    }
  ],
  "components": {
    "securitySchemes": {
      "sec0": {
        "type": "oauth2",
        "flows": {}
      }
    }
  },
  "security": [
    {
      "sec0": []
    }
  ],
  "paths": {
    "/api/v4/{entity_type}/custom_fields": {
      "patch": {
        "summary": "Update custom fields",
        "description": "This method allows updating multiple custom fields of an entity (leads/contacts/companies)",
        "operationId": "update-custom-fields",
        "parameters": [
          {
            "in": "path",
            "name": "entity_type",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "RAW_BODY": {
                    "type": "array",
                    "items": {
                      "properties": {
                        "id": {
                          "type": "integer",
                          "format": "int32",
                          "description": "ID of the custom field. Provide either `id` or `code`"
                        },
                        "code": {
                          "type": "string",
                          "description": "The field code by which the value in the entity can be updated without passing the field ID. Field code can't be updated itself by the request"
                        },
                        "name": {
                          "type": "string",
                          "description": "Field name"
                        },
                        "sort": {
                          "type": "integer",
                          "description": "Field sorting in the field group",
                          "format": "int32"
                        },
                        "group_id": {
                          "type": "string",
                          "description": "Field group ID"
                        },
                        "is_api_only": {
                          "type": "boolean",
                          "description": "Defines whether the field is editable via API only. Available for all lead, contact, and company fields."
                        },
                        "enums": {
                          "type": "array",
                          "items": {
                            "properties": {
                              "id": {
                                "type": "integer",
                                "description": "You must pass the ID if you want to update the field without deleting the existing enums. If you do not pass this field, the existing enums will be deleted"
                              },
                              "value": {
                                "type": "string",
                                "description": "Enum value"
                              },
                              "sort": {
                                "type": "string",
                                "description": "Enum sorting"
                              },
                              "code": {
                                "type": "string",
                                "description": "Value symbolic code"
                              }
                            },
                            "type": "object"
                          },
                          "description": "Available for the following field types: `multiselect`, `radiobutton`, `select`"
                        },
                        "required_statuses": {
                          "type": "array",
                          "description": "Array of the fields required to change a lead status",
                          "items": {
                            "properties": {
                              "status_id": {
                                "type": "integer",
                                "description": "ID of the stage which requires the current field to have a value before the lead can be moved",
                                "format": "int32"
                              },
                              "pipeline_id": {
                                "type": "integer",
                                "description": "ID of the pipeline which requires the current field to have a value before the lead can be moved",
                                "format": "int32"
                              }
                            },
                            "type": "object"
                          }
                        },
                        "remind": {
                          "type": "string",
                          "description": "When to send birthday reminders (`never` — never, `day` — one day before, `week` — one week before, `month` — one month before). Available for the field type `birthday`"
                        },
                        "tracking_callback": {
                          "type": "string",
                          "description": "JavaScript callback function that will be executed on the page containing the Website Chat Button and Kommo webform when the data is submitted. Available for the field type `tracking_data`"
                        },
                        "hidden_statuses": {
                          "type": "array",
                          "items": {
                            "properties": {
                              "status_id": {
                                "type": "integer",
                                "description": "The ID of the stage in which the field is hidden"
                              },
                              "pipeline_id": {
                                "type": "integer",
                                "description": "The ID of the pipeline in which the field is hidden"
                              }
                            },
                            "type": "object"
                          },
                          "description": "Field visibility settings. Fields are hidden in the interface depending on the lead stage. This property is returned only when retrieving the list of lead fields"
                        },
                        "chained_lists": {
                          "type": "array",
                          "description": "Configuration for a `chained_list` field. This property is returned only when retrieving the list of lead fields. Available for the field type `chained_list`",
                          "items": {
                            "properties": {
                              "title": {
                                "type": "string",
                                "description": "The name of the linked list displayed in the lead card."
                              },
                              "catalog_id": {
                                "type": "integer",
                                "description": "ID of the catalog"
                              },
                              "parent_catalog_id": {
                                "type": "integer",
                                "description": "ID of the parent catalog"
                              }
                            },
                            "type": "object"
                          }
                        },
                        "search_in": {
                          "type": "string",
                          "description": "The ID of the linked list or its symbolic code (`contacts`, `companies`, `contacts_and_companies`). Available for the field type `linked_entity`"
                        },
                        "currency": {
                          "type": "string",
                          "description": "The currency code for the field. Available for the field type `monetary`"
                        }
                      },
                      "type": "object"
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "201",
            "content": {
              "application/json": {
                "examples": {
                  "Request successful": {
                    "value": "{\n    \"_total_items\": 2,\n    \"_embedded\": {\n        \"custom_fields\": [\n            {\n                \"id\": 624542,\n                \"name\": \"Number of requests\",\n                \"type\": \"text\",\n                \"account_id\": 32694255,\n                \"code\": null,\n                \"sort\": 501,\n                \"is_api_only\": false,\n                \"enums\": null,\n                \"request_id\": \"0\",\n                \"group_id\": null,\n                \"required_statuses\": [],\n                \"is_deletable\": true,\n                \"is_predefined\": false,\n                \"entity_type\": \"leads\",\n                \"tracking_callback\": null,\n                \"remind\": null,\n                \"triggers\": [],\n                \"currency\": null,\n                \"hidden_statuses\": [],\n                \"chained_lists\": null,\n                \"_links\": {\n                    \"self\": {\n                        \"href\": \"https://subdomain.kommo.com/api/v4/leads/custom_fields/624542\"\n                    }\n                }\n            },\n            {\n                \"id\": 1240452,\n                \"name\": \"Number\",\n                \"type\": \"multiselect\",\n                \"account_id\": 32694255,\n                \"code\": null,\n                \"sort\": 507,\n                \"is_api_only\": false,\n                \"enums\": {\n                    \"3\": {\n                        \"id\": 900900,\n                        \"value\": \"44\",\n                        \"sort\": 2\n                    },\n                    \"4\": {\n                        \"id\": 900902,\n                        \"value\": \"88\",\n                        \"sort\": 3\n                    },\n                    \"5\": {\n                        \"id\": 900904,\n                        \"value\": \"22\",\n                        \"sort\": 1\n                    }\n                },\n                \"request_id\": \"1\",\n                \"group_id\": null,\n                \"required_statuses\": [],\n                \"is_deletable\": true,\n                \"is_predefined\": false,\n                \"entity_type\": \"leads\",\n                \"tracking_callback\": null,\n                \"remind\": null,\n                \"triggers\": [],\n                \"currency\": null,\n                \"hidden_statuses\": [],\n                \"chained_lists\": null,\n                \"_links\": {\n                    \"self\": {\n                        \"href\": \"https://subdomain.kommo.com/api/v4/leads/custom_fields/1240452\"\n                    }\n                }\n            }\n        ]\n    }\n}\n        \n    "
                  }
                },
                "schema": {
                  "type": "object",
                  "properties": {
                    "_total_items": {
                      "type": "integer",
                      "example": 2,
                      "default": 0
                    },
                    "_embedded": {
                      "type": "object",
                      "properties": {
                        "custom_fields": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "integer",
                                "example": 624542,
                                "default": 0
                              },
                              "name": {
                                "type": "string",
                                "example": "Number of requests"
                              },
                              "type": {
                                "type": "string",
                                "example": "text"
                              },
                              "account_id": {
                                "type": "integer",
                                "example": 32694255,
                                "default": 0
                              },
                              "code": {},
                              "sort": {
                                "type": "integer",
                                "example": 501,
                                "default": 0
                              },
                              "is_api_only": {
                                "type": "boolean",
                                "example": false,
                                "default": true
                              },
                              "enums": {},
                              "request_id": {
                                "type": "string",
                                "example": "0"
                              },
                              "group_id": {},
                              "required_statuses": {
                                "type": "array"
                              },
                              "is_deletable": {
                                "type": "boolean",
                                "example": true,
                                "default": true
                              },
                              "is_predefined": {
                                "type": "boolean",
                                "example": false,
                                "default": true
                              },
                              "entity_type": {
                                "type": "string",
                                "example": "leads"
                              },
                              "tracking_callback": {},
                              "remind": {},
                              "triggers": {
                                "type": "array"
                              },
                              "currency": {},
                              "hidden_statuses": {
                                "type": "array"
                              },
                              "chained_lists": {},
                              "_links": {
                                "type": "object",
                                "properties": {
                                  "self": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "example": "https://subdomain.kommo.com/api/v4/leads/custom_fields/624542"
                                      }
                                    }
                                  }
                                }
                              }
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "400",
            "content": {
              "text/plain": {
                "examples": {
                  "Invalid data given. Details are available in the response": {
                    "value": ""
                  }
                }
              }
            }
          },
          "401": {
            "description": "401",
            "content": {
              "text/plain": {
                "examples": {
                  "User is not authorized": {
                    "value": ""
                  }
                }
              }
            }
          },
          "422": {
            "description": "422",
            "content": {
              "application/json": {
                "examples": {
                  "Request can not be processed. Details are available in the response": {
                    "value": "{}"
                  }
                },
                "schema": {
                  "type": "object",
                  "properties": {}
                }
              }
            }
          }
        }
      }
    }
  },
  "x-readme": {
    "headers": [],
    "explorer-enabled": true,
    "proxy-enabled": true
  },
  "x-readme-fauxas": true
}
```