For AI agents: markdown of this page — /docs-content-en/entities/requisite-presets/preset-fields/list.md documentation index — /llms.txt
List preset fields
GET /v1/requisite-presets/:presetId/fields
Returns the list of fields that make up a requisite preset. The fields describe what a requisite consists of: INN, OGRN, director, KPP, and others.
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
ParameterpresetId (path) |
Typenumber | Requiredyes | Default— | DescriptionRequisite preset ID. Get the list of presets: GET /v1/requisite-presets |
Parameterlimit |
Typenumber | Requiredno | Default50 |
DescriptionNumber of records (up to 5000) |
Parameteroffset |
Typenumber | Requiredno | Default0 |
DescriptionSkip N records |
Parameterfilter |
Typeobject | Requiredno | Default— | DescriptionExact-match field filter, e.g. filter[fieldName]=RQ_INN. Available fields: id, fieldName, fieldTitle, inShortList, sort. An unknown field returns 400 UNKNOWN_FILTER_FIELD |
Parametersort |
Typestring | Requiredno | Default— | DescriptionSort field: id, fieldName, fieldTitle, inShortList, sort. Direction is set in order |
Parameterorder |
Typestring | Requiredno | Defaultasc |
DescriptionSort direction: asc or desc |
Examples
curl — personal key
curl "https://vibecode.bitrix24.com/v1/requisite-presets/1/fields" \
-H "X-Api-Key: YOUR_API_KEY"
curl — OAuth application
curl "https://vibecode.bitrix24.com/v1/requisite-presets/1/fields" \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN"
JavaScript — personal key
const res = await fetch('https://vibecode.bitrix24.com/v1/requisite-presets/1/fields', {
headers: {
'X-Api-Key': 'YOUR_API_KEY',
},
})
const { success, data, meta } = await res.json()
console.log(`Fields in preset: ${meta.total}`)
JavaScript — OAuth application
const res = await fetch('https://vibecode.bitrix24.com/v1/requisite-presets/1/fields', {
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
},
})
const { success, data, meta } = await res.json()
Response fields
| Field | Type | Description |
|---|---|---|
Fieldsuccess |
Typeboolean | DescriptionAlways true on success |
Fielddata |
Typearray | DescriptionArray of preset field rows |
Fielddata[].id |
Typenumber | DescriptionID of the field row within the preset |
Fielddata[].fieldName |
Typestring | DescriptionSystem name of the requisite field: RQ_INN, RQ_COMPANY_NAME, etc. |
Fielddata[].fieldTitle |
Typestring | DescriptionCustom field title. An empty string means the default title is used |
Fielddata[].inShortList |
Typeboolean | DescriptionWhether the field is shown in the short requisite list |
Fielddata[].sort |
Typenumber | DescriptionSort order of the field within the preset |
Fieldmeta.total |
Typenumber | DescriptionNumber of records in the set: with filter — after filtering, without filter — all fields in the preset |
Fieldmeta.hasMore |
Typeboolean | DescriptionWhether there are more records beyond limit in this set |
Response example
{
"success": true,
"data": [
{
"id": 1,
"fieldName": "RQ_INN",
"fieldTitle": "",
"inShortList": true,
"sort": 500
},
{
"id": 2,
"fieldName": "RQ_COMPANY_NAME",
"fieldTitle": "",
"inShortList": true,
"sort": 510
},
{
"id": 3,
"fieldName": "RQ_COMPANY_FULL_NAME",
"fieldTitle": "",
"inShortList": false,
"sort": 520
}
],
"meta": {
"total": 13,
"hasMore": false
}
}
Error response example
404 — preset not found:
{
"success": false,
"error": {
"code": "ENTITY_NOT_FOUND",
"message": "The Preset with ID '999999' is not found"
}
}
Errors
| HTTP | Code | Description |
|---|---|---|
| HTTP400 | CodeINVALID_PRESET_ID |
DescriptionThe provided presetId is not a positive integer |
| HTTP400 | CodeUNKNOWN_FILTER_FIELD |
Descriptionfilter names a field outside id, fieldName, fieldTitle, inShortList, sort |
| HTTP400 | CodeUNKNOWN_SORT_FIELD |
Descriptionsort names a field outside the same list |
| HTTP400 | CodeINVALID_FILTER_OPERATOR |
Descriptionfilter uses an operator — only exact equality is supported |
| HTTP404 | CodeENTITY_NOT_FOUND |
DescriptionNo preset with the given presetId found |
| HTTP403 | CodeSCOPE_DENIED |
DescriptionAPI key lacks the crm scope |
| HTTP401 | CodeTOKEN_MISSING |
DescriptionAPI key has no configured tokens |
Full list of common API errors — Errors.
Known specifics
A field identifier is positional — do not rely on a stored value between write operations. data[].id is a positional identifier of a field row within the preset. It may change when the preset composition is modified — after fields are added or removed. To update or delete a field, re-read the list and find the row by fieldName rather than by a previously stored id.
The inShortList flag is a boolean. The field is returned as true or false, not Y/N.
fieldTitle is empty in the list until the title is overridden. The default name — "INN" for RQ_INN, "Contact person" for RQ_CONTACT — is returned when you read a single row: GET /v1/requisite-presets/:presetId/fields/:id. In the list, the same field comes back with fieldTitle: "".
Pagination is applied on the Vibecode side. Vibecode applies limit and offset after it receives the full list from Bitrix24. If the preset contains more than 50 fields, pass an explicit limit — the default is 50 records.