For AI agents: markdown of this page — /docs-content-en/userfields/crm/get.md documentation index — /llms.txt

Get field

GET /v1/userfields/:entity/:id

Returns the full description of a single user field of a CRM entity by its numeric identifier.

Parameters

Parameter Type Required Description
:entity (path) string yes Entity: deals, leads, contacts, companies, quotes, requisites
:id (path) number yes Numeric identifier of the field (from the response of GET /v1/userfields/:entity or POST /v1/userfields/:entity)

Examples

curl — personal key

Terminal
curl "https://vibecode.bitrix24.com/v1/userfields/deals/7115" \
  -H "X-Api-Key: YOUR_API_KEY"

curl — OAuth application

Terminal
curl "https://vibecode.bitrix24.com/v1/userfields/deals/7115" \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN"

JavaScript — personal key

javascript
const res = await fetch(
  'https://vibecode.bitrix24.com/v1/userfields/deals/7115',
  {
    headers: { 'X-Api-Key': 'YOUR_API_KEY' },
  }
)
const { success, data } = await res.json()
console.log(data.fieldName, data.userTypeId)

JavaScript — OAuth application

javascript
const res = await fetch(
  'https://vibecode.bitrix24.com/v1/userfields/deals/7115',
  {
    headers: {
      'X-Api-Key': 'YOUR_APP_KEY',
      'Authorization': 'Bearer USER_SESSION_TOKEN',
    },
  }
)
const { success, data } = await res.json()

Response fields

Field Type Description
success boolean Always true on success
data object Field object
data.id number Numeric identifier of the field
data.entityId string Internal entity identifier: CRM_DEAL, CRM_LEAD, CRM_CONTACT, CRM_COMPANY, CRM_QUOTE, CRM_REQUISITE
data.fieldName string System field name in the UF_CRM_* format
data.userTypeId string Field type. The list of allowed values — GET /v1/userfields/:entity/types
data.xmlId string|null External identifier for integrations. Set manually on creation
data.sort string Sort order in the Bitrix24 interface
data.multiple string Multiple field: "Y" or "N"
data.mandatory string Required field: "Y" or "N"
data.showFilter string Show in the filter: "N" — no, "I" — exact value, "E" — mask, "S" — range
data.showInList string Show in the record list: "Y" or "N"
data.editInList string Allow editing directly from the list: "Y" or "N"
data.isSearchable string Whether it participates in full-text search: "Y" or "N"
data.settings object Field settings specific to userTypeId. For stringSIZE, ROWS, REGEXP, MIN_LENGTH, MAX_LENGTH, DEFAULT_VALUE. For other types the composition differs
data.list array Options for an enumeration field. Absent for other types. Each item contains ID, SORT, VALUE, DEF (all values are strings) and optionally XML_ID (string; present only when set manually or via import — items created through the API have no such key)
data.editFormLabel object Field label in the edit form — an object keyed by Bitrix24 account languages
data.listColumnLabel object Column header in the record list — an object keyed by Bitrix24 account languages
data.listFilterLabel object Field label in the filter — an object keyed by Bitrix24 account languages
data.errorMessage object Validation error message — an object keyed by Bitrix24 account languages
data.helpMessage object Hint below the field in the form — an object keyed by Bitrix24 account languages

Response example

The language objects (editFormLabel, listColumnLabel, listFilterLabel, errorMessage, helpMessage) arrive for all Bitrix24 account languages. Three keys are kept in the example for brevity.

JSON
{
  "success": true,
  "data": {
    "id": 7115,
    "entityId": "CRM_DEAL",
    "fieldName": "UF_CRM_VIBE_DOC_1779951810",
    "userTypeId": "string",
    "xmlId": null,
    "sort": "100",
    "multiple": "N",
    "mandatory": "N",
    "showFilter": "N",
    "showInList": "Y",
    "editInList": "Y",
    "isSearchable": "N",
    "settings": {
      "SIZE": 20,
      "ROWS": 1,
      "REGEXP": "",
      "MIN_LENGTH": 0,
      "MAX_LENGTH": 0,
      "DEFAULT_VALUE": ""
    },
    "editFormLabel": {
      "en": "Documentation field",
      "de": "Documentation field",
      "fr": "Documentation field"
    },
    "listColumnLabel": {
      "en": "Documentation field",
      "de": "Documentation field",
      "fr": "Documentation field"
    },
    "listFilterLabel": {
      "en": "Documentation field",
      "de": "Documentation field",
      "fr": "Documentation field"
    },
    "errorMessage": {
      "en": "Documentation field",
      "de": "Documentation field",
      "fr": "Documentation field"
    },
    "helpMessage": {
      "en": "Documentation field",
      "de": "Documentation field",
      "fr": "Documentation field"
    }
  }
}

Error response example

404 — the field does not exist:

JSON
{
  "success": false,
  "error": {
    "code": "ENTITY_NOT_FOUND",
    "message": "The entity with ID '9999999' is not found."
  }
}

Errors

HTTP Code Description
400 UNKNOWN_ENTITY :entity is not in the list of supported entities
404 ENTITY_NOT_FOUND Bitrix24 returned a NOT_FOUND error — there is no field with this id
404 NOT_FOUND Bitrix24 returned success, but result is empty — the field is absent on the portal
401 MISSING_API_KEY The X-Api-Key header is missing
401 TOKEN_MISSING The API key has no configured tokens
403 SCOPE_DENIED The API key does not have the crm scope

Full list of common API errors — Errors.

Known specifics

Language objects. The fields editFormLabel, listColumnLabel, listFilterLabel, errorMessage, helpMessage arrive as objects with values per Bitrix24 account language (ru, en, ua, de, fr, and others). The value is set when the field is created or updated via the label parameter. If only a string is passed ("label": "My title"), Bitrix24 automatically propagates it to all available languages.

The settings field. The structure of the settings object depends on the value of userTypeId. Key sets for common types:

  • stringSIZE, ROWS, REGEXP, MIN_LENGTH, MAX_LENGTH, DEFAULT_VALUE
  • enumerationDISPLAY, LIST_HEIGHT, CAPTION_NO_VALUE, SHOW_NO_VALUE
  • datetimeDEFAULT_VALUE, USE_SECOND, USE_TIMEZONE

Other types have their own set of keys.

The type of the nested settings.DEFAULT_VALUE key also depends on userTypeId: an empty string "" for string and money, the number 0 for boolean, an object { "TYPE": ..., "VALUE": ... } for date and datetime, an empty array [] for employee. The composition and types of nested settings keys are not fixed — rely on the specific userTypeId rather than on a single set.

When a field type has no configurable parameters, Bitrix24 may return the settings field itself as an empty array [] instead of {} (a PHP empty associative-array serialization quirk). Treat an empty array as "no settings" — do not rely on settings always being an object.

See also