For AI agents: markdown of this page — /docs-content-en/entities/requisites/update.md documentation index — /llms.txt

Update requisite

PATCH /v1/requisites/:id

Updates fields of an existing requisite. Pass fields at the root of the request body, without a fields wrapper.

Parameters

Parameter Type Required Description
Parameterid (path) Typenumber Requiredyes DescriptionRequisite ID. List: GET /v1/requisites

Request fields (body)

Pass only the fields you want to change (at least one). All fields are optional. Below are the common fields and a selection of rq* fields. The fields a preset uses are listed by GET /v1/requisite-presets/:presetId/fields. Full list, including fields of all countries and UF_CRM_* user fields — GET /v1/requisites/fields.

Field Type Description
Fieldname Typestring DescriptionRequisite name in the Bitrix24 interface
Fieldactive Typeboolean DescriptionWhether the requisite is active
Fieldsort Typenumber DescriptionSort order. Lower values come first
Fieldcode Typestring DescriptionSymbolic code for external integrations
FieldxmlId Typestring DescriptionExternal identifier for synchronization
FieldoriginatorId Typestring DescriptionSource system ID
FieldaddressOnly Typeboolean Description"Address only" flag
FieldrqName Typestring DescriptionFull name
FieldrqCompanyName Typestring DescriptionShort legal-entity name
FieldrqCompanyFullName Typestring DescriptionFull legal-entity name
FieldrqInn Typestring DescriptionINN
FieldrqKpp Typestring DescriptionKPP
FieldrqOgrn Typestring DescriptionOGRN
FieldrqDirector Typestring DescriptionDirector's full name
FieldrqAccountant Typestring DescriptionChief accountant's full name
FieldrqVatPayer Typeboolean DescriptionVAT payer
FieldUF_CRM_* Typedepends on the field DescriptionRequisite user field. Names and types are listed in GET /v1/requisites/fields
Fieldid, createdAt, updatedAt, createdBy, modifyBy TypeRO DescriptionSet by the system. Passing them is rejected with 400 READONLY_FIELD

Examples

curl — personal key

Terminal
curl -X PATCH "https://vibecode.bitrix24.com/v1/requisites/42" \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "rqInn": "1234567890",
    "rqKpp": "123456789",
    "rqDirector": "John Smith"
  }'

curl — OAuth application

Terminal
curl -X PATCH "https://vibecode.bitrix24.com/v1/requisites/42" \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "rqInn": "1234567890",
    "rqKpp": "123456789"
  }'

JavaScript — personal key

javascript
const res = await fetch('https://vibecode.bitrix24.com/v1/requisites/42', {
  method: 'PATCH',
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    rqInn: '1234567890',
    rqKpp: '123456789',
    rqDirector: 'John Smith',
  }),
})

const { success, data } = await res.json()

JavaScript — OAuth application

javascript
const res = await fetch('https://vibecode.bitrix24.com/v1/requisites/42', {
  method: 'PATCH',
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    rqInn: '1234567890',
    rqKpp: '123456789',
  }),
})

const { success, data } = await res.json()

Response fields

Field Type Description
Fieldsuccess Typeboolean Descriptiontrue on success
Fielddata Typeobject DescriptionThe updated requisite. Contains all requisite fields, including unchanged ones and UF_CRM_* user fields. Empty fields are null. Field reference — Requisite fields
Fielddata.id Typenumber DescriptionRequisite ID
Fielddata.updatedAt Typedatetime DescriptionModification date after the update
Fielddata.modifyBy Typenumber DescriptionID of the user who performed the update

Response example

The main fields are shown. Full list: Requisite fields.

JSON
{
  "success": true,
  "data": {
    "id": 527,
    "entityTypeId": 4,
    "entityId": 3157,
    "presetId": 1,
    "name": "Primary requisite",
    "active": true,
    "sort": 500,
    "rqInn": "1234567890",
    "rqKpp": "123456789",
    "rqDirector": "John Smith",
    "createdAt": "2026-10-22T08:51:53.000Z",
    "updatedAt": "2026-10-22T08:53:26.000Z",
    "modifyBy": 1
  }
}

Error response example

404 — requisite not found:

JSON
{
  "success": false,
  "error": {
    "code": "ENTITY_NOT_FOUND",
    "message": "The Requisite with ID '999999999' is not found"
  }
}

Errors

HTTP Code Description
HTTP404 CodeENTITY_NOT_FOUND DescriptionNo requisite with this id
HTTP400 CodeEMPTY_UPDATE_BODY DescriptionThe request body is empty
HTTP400 CodeREADONLY_FIELD DescriptionA read-only field was passed: id, createdAt, updatedAt, createdBy, modifyBy
HTTP400 CodeINVALID_PARAMS DescriptionThe value does not match the field type, for example the string "abc" in sort or an empty string in active
HTTP400 CodeNESTED_FIELDS_ENVELOPE DescriptionFields were passed inside a fields object instead of at the root of the body
HTTP403 CodeBITRIX_ACCESS_DENIED DescriptionNo access to the parent entity
HTTP403 CodeSCOPE_DENIED DescriptionThe key lacks the crm scope
HTTP401 CodeTOKEN_MISSING DescriptionThe key has no Bitrix24 connection

Full list of common API errors — Errors.

Known specifics

The preset and owner cannot be changed. presetId, entityTypeId and entityId in the update body are silently ignored: the response is 200 and the values stay the same. To change the preset or move the requisite to another contact or company, create a new requisite and delete the old one.

A field with an unknown name is ignored. A name that is not in GET /v1/requisites/fields is dropped without an error. A field from the schema is saved even if it is not in the requisite preset, for example rqInn on a requisite with the Company preset.

An empty value clears the field. To clear a string requisite field — name, code, xmlId, originatorId or an rq* field — pass an empty string "" or null. For numeric fields (sort) and boolean fields (active, addressOnly, rqVatPayer, rqStampPresent), an empty string is rejected with 400 INVALID_PARAMS as a type mismatch: send null or omit the field. For date fields (rqCompanyRegDate, rqVatCertDate, rqBaseDocDate, rqRegCertDate, rqIdentDocDate), an empty string clears the field. Cleared fields are returned as null in responses.

See also